Interactive drawing of a circle.
draw_circle_mod produces the parameter for a circle created interactive by the user in the window.
To create a circle are expected the coordinates RowIn and ColumnIn of the center of a circle with radius RadiusIn. After another mouse click in the created circle center you can move it. A clicking close to the circular arc you can modify the Radius of the circle. Pressing the right mousebutton terminates the procedure. After terminating the procedure the circle is not visible in the window any longer.
|
WindowHandle (input_control) |
window -> integer |
| Window_id. | |
|
RowIn (input_control) |
circle.center.y -> real |
| Row index of the center. | |
|
ColumnIn (input_control) |
circle.center.x -> real |
| Column index of the center. | |
|
RadiusIn (input_control) |
circle.radius1 -> real |
| Radius of the circle. | |
|
Row (output_control) |
circle.center.y -> real |
| Barycenter's row index. | |
|
Column (output_control) |
circle.center.x -> real |
| Barycenter's column index. | |
|
Radius (output_control) |
circle.radius -> real |
| Circle's radius. | |
read_image(Image,'affe') draw_circle_mod(WindowHandle,20,20,15,Row,Column,Radius) gen_circle(Circle,Row,Column,Radius,) reduce_domain(Image,Circle,GrayCircle) disp_image(GrayCircle,WindowHandle).
draw_circle_mod 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.
draw_circle_mod is reentrant, local, and processed without parallelization.
reduce_domain, disp_region, set_colored, set_line_width, set_draw, set_insert
draw_circle, draw_ellipse, draw_region
gen_circle, draw_rectangle1, draw_rectangle2, draw_polygon, set_insert
Foundation