draw_regionT_draw_regionDrawRegionDrawRegiondraw_region (Operator)

Name

draw_regionT_draw_regionDrawRegionDrawRegiondraw_region — Interactive drawing of a closed region.

Signature

draw_region( : Region : WindowHandle : )

Herror T_draw_region(Hobject* Region, const Htuple WindowHandle)

void DrawRegion(HObject* Region, const HTuple& WindowHandle)

void HRegion::DrawRegion(const HWindow& WindowHandle)

HRegion HWindow::DrawRegion() const

static void HOperatorSet.DrawRegion(out HObject region, HTuple windowHandle)

void HRegion.DrawRegion(HWindow windowHandle)

HRegion HWindow.DrawRegion()

def draw_region(window_handle: HHandle) -> HObject

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

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