draw_rectangle1 ( : : WindowHandle : Row1, Column1, Row2, Column2 )

Draw a rectangle parallel to the coordinate axis.

draw_rectangle1 returns the parameter for a rectangle parallel to the coordinate axes, which has been created interactively by the user in the window.

To create a rectangle you have to press the left mouse button determining a corner of the rectangle. While keeping the button pressed you may ``drag'' the rectangle in any direction. After another mouse click in the middle of the created rectangle you can move it. A click close to one side ``grips'' it to modify the rectangle's dimension in perpendicular direction to this side. If you click on one corner of the created rectangle, you may move this corner. Pressing the right mousebutton terminates the procedure.

After terminating the procedure the rectangle is not visible in the window any longer.


Parameters

WindowHandle (input_control)
window -> integer
Window_id.

Row1 (output_control)
rectangle.origin.y -> real
Row index of the left upper corner.

Column1 (output_control)
rectangle.origin.x -> real
Column index of the left upper corner.

Row2 (output_control)
rectangle.corner.y -> real
Row index of the right lower corner.

Column2 (output_control)
rectangle.corner.x -> real
Column index of the right lower corner.


Example
get_system('width',Width) 
get_system('height',Height) 
set_part(WindowHandle,0,0,Width-1,Height-1) 
read_image(Image,'affe') 
disp_image(Image,WindowHandle) 
draw_rectangle1(WindowHandle,Row1,Column1,Row2,Column2) 
set_part(WindowHandle,Row1,Column1,Row2,Column2) 
disp_image(Image,WindowHandle) 
fwrite_string(['Clipping = (',Row1,',',Column1,')']) 
fwrite_string([',(',Row2,',',Column2,')']) 
fnew_line().

Result

draw_rectangle1 returns 2 (H_MSG_TRUE), if the window is valid and the needed drawing mode (see set_insert) is available. If necessary, an exception handling is raised.


Parallelization Information

draw_rectangle1 is reentrant, local, and processed without parallelization.


Possible Predecessors

open_window


Possible Successors

reduce_domain, disp_region, set_colored, set_line_width, set_draw, set_insert


Alternatives

draw_rectangle1_mod, draw_rectangle2, draw_region


See also

gen_rectangle1, draw_circle, draw_ellipse, set_insert


Module

Foundation



Copyright © 1996-2008 MVTec Software GmbH