The DEFROI function defines an irregular region of interest of an image using the image display system and the cursor and mouse. DEFROI only works for interactive, pixel oriented devices with a cursor and an exclusive or writing mode. Regions may have at most 1000 vertices.
DEFROI does not function correctly when used with draw widgets. See CW_DEFROI.
This routine is written in the IDL language. Its source code can be found in the file defroi.pro in the lib subdirectory of the IDL distribution.
Example
TVSCL, DIST(200,200)
X = DEFROI(200, 200)
PRINT, X
Using DEFROI
After calling DEFROI, click in the image with the left mouse button to mark points on the boundary of the region of interest. The points are connected in sequence. Alternatively, press and hold the left mouse button and drag to draw a curved region. Click the middle mouse button to erase points. The most recently-placed point is erased first. Click the right mouse button to close the region. The function returns after the region has been closed.
Syntax
Result = DEFROI( Sx, Sy [, Xverts, Yverts] [, /NOREGION] [, /NOFILL] [, /RESTORE] [, X0=device_coord] [, Y0=device_coord] [, ZOOM=factor] )
Return Value
Returns a vector of subscripts of the pixels inside the region. The lowest bit in which the write mask is enabled is changed.
Arguments
Sx, Sy
Integers specifying the horizontal and vertical size of image, in pixels.
Xverts, Yverts
Named vectors that will contain the vertices of the enclosed region.
Keywords
NOREGION
Set this keyword to inhibit the return of the pixel subscripts.
NOFILL
Set this keyword to inhibit filling of the defined region on completion.
RESTORE
Set this keyword to restore the display to its original state upon completion.
X0
Set this keyword equal to X coordinate of the lower left corner of the displayed image (in device coordinates). If omitted, the default value (0) is used.
Y0
Set this keyword equal to Y coordinate of the lower left corner of the displayed image (in device coordinates). If omitted, the default value (0) is used.
ZOOM
Set this keyword equal to the zoom factor. If not specified, a value of 1 is assumed.
Version History
See Also
CW_DEFROI