draw_regionT_draw_regionDrawRegionDrawRegiondraw_region (Operator)
Name
draw_regionT_draw_regionDrawRegionDrawRegiondraw_region
— Interactive drawing of a closed region.
Signature
Description
draw_regiondraw_regionDrawRegionDrawRegiondraw_region
produces an image. The region of that image spans
exactly the image region entered interactively by mouse clicks (gray values
remain undefined).
Painting happens in the output window while keeping the left mouse button
pressed. The left mouse button even operates by clicking in the output window;
through this a line between the previous clicked points is drawn.
Clicking the right mouse button terminates input and closes the outline.
Subsequently the image is “filled up”. Also it contains the whole image area
enclosed by the mouse.
Painting uses that color which has been set by set_colorset_colorSetColorSetColorset_color
,
set_rgbset_rgbSetRgbSetRgbset_rgb
, etc. .
Pressing the right mouse button terminates the procedure.
Attention
The output object's gray values are not defined.
If used in a buffer window, mouse events have to be supplied by the
application, while the draw operator must be run in another thread.
Execution Information
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
Parameters
RegionRegionRegionregionregion
(output_object) region →
objectHRegionHObjectHObjectHobject *
Interactive created region.
WindowHandleWindowHandleWindowHandlewindowHandlewindow_handle
(input_control) window →
HWindow, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Window handle.
Example (HDevelop)
read_image(Image,'fabrik')
dev_display (Image)
draw_region(Region,WindowHandle)
reduce_domain(Image,Region,ImageReduced)
invert_image (ImageReduced, ImageInvert)
dev_display (ImageInvert)
Example (C)
read_image(&Image,"fabrik");
disp_image(Image,WindowHandle);
draw_region(&Region,WindowHandle);
reduce_domain(Image,Region,&New);
regiongrowing(New,&Segmente,5,5,6,50);
set_colored(WindowHandle,12);
disp_region(Segmente,WindowHandle);
Example (HDevelop)
read_image(Image,'fabrik')
dev_display (Image)
draw_region(Region,WindowHandle)
reduce_domain(Image,Region,ImageReduced)
invert_image (ImageReduced, ImageInvert)
dev_display (ImageInvert)
Example (HDevelop)
read_image(Image,'fabrik')
dev_display (Image)
draw_region(Region,WindowHandle)
reduce_domain(Image,Region,ImageReduced)
invert_image (ImageReduced, ImageInvert)
dev_display (ImageInvert)
Result
If the window is valid, draw_regiondraw_regionDrawRegionDrawRegiondraw_region
returns 2 (
H_MSG_TRUE)
.
If necessary, an exception is raised.
Possible Predecessors
open_windowopen_windowOpenWindowOpenWindowopen_window
Possible Successors
reduce_domainreduce_domainReduceDomainReduceDomainreduce_domain
,
disp_regiondisp_regionDispRegionDispRegiondisp_region
,
set_coloredset_coloredSetColoredSetColoredset_colored
,
set_line_widthset_line_widthSetLineWidthSetLineWidthset_line_width
,
set_drawset_drawSetDrawSetDrawset_draw
Alternatives
draw_circledraw_circleDrawCircleDrawCircledraw_circle
,
draw_ellipsedraw_ellipseDrawEllipseDrawEllipsedraw_ellipse
,
draw_rectangle1draw_rectangle1DrawRectangle1DrawRectangle1draw_rectangle1
,
draw_rectangle2draw_rectangle2DrawRectangle2DrawRectangle2draw_rectangle2
See also
draw_polygondraw_polygonDrawPolygonDrawPolygondraw_polygon
,
reduce_domainreduce_domainReduceDomainReduceDomainreduce_domain
,
fill_upfill_upFillUpFillUpfill_up
,
set_colorset_colorSetColorSetColorset_color
Module
Foundation