Intel® Fortran Compiler Classic and Intel® Fortran Compiler Developer Guide and Reference

ID 767251
Date 3/22/2024
Public
Document Table of Contents

SETCLIPRGN

Graphics Subroutine: Limits graphics output to part of the screen. This routine is only available for Windows.

Module

USE IFQWIN

CALL SETCLIPRGN (x1,y1,x2,y2)

x1, y1

(Input) INTEGER(2). Physical coordinates for upper-left corner of clipping region.

x2, y2

(Input) INTEGER(2). Physical coordinates for lower-right corner of clipping region.

The SETCLIPRGN function limits the display of subsequent graphics output and font text output to that which fits within a designated area of the screen (the "clipping region"). The physical coordinates (x1, y1) and (x2, y2) are the upper-left and lower-right corners of the rectangle that defines the clipping region. The SETCLIPRGN function does not change the viewport-coordinate system; it merely masks graphics output to the screen.

SETCLIPRGN affects graphics and font text output only, such as OUTGTEXT. To mask the screen for text output using OUTTEXT, use SETTEXTWINDOW.

Example

This program draws an ellipse lying partly within a clipping region, as shown below.

 ! Build as QuickWin or Standard Graphics ap.
 USE IFQWIN
 INTEGER(2) status, x1, y1, x2, y2
 INTEGER(4) oldcolor
 x1 = 10;  y1 = 50
 x2 = 170; y2 = 150
 ! Draw full ellipse in white
 status = ELLIPSE($GBORDER, x1, y1, x2, y2)
 oldcolor = SETCOLORRGB(Z'FF0000') !blue
 WRITE(*,*) "Hit enter"
 READ(*,*)
 CALL CLEARSCREEN($GCLEARSCREEN) ! clear screen
 CALL SETCLIPRGN( INT2(0), INT2(0), &
                  INT2(150), INT2(125))
 ! only part of ellipse inside clip region drawn now
 status = ELLIPSE($GBORDER, x1, y1, x2, y2)
 END

The following shows the output of this program.