drag_region3T_drag_region3DragRegion3DragRegion3drag_region3 (Operator)

Name

drag_region3T_drag_region3DragRegion3DragRegion3drag_region3 — Interactive movement of a region with restriction of positions.

Warning

This operator does not work in an HDevelop graphics window opened with dev_open_window.

Signature

drag_region3(SourceRegion, MaskRegion : DestinationRegion : WindowHandle, Row, Column : )

Herror T_drag_region3(const Hobject SourceRegion, const Hobject MaskRegion, Hobject* DestinationRegion, const Htuple WindowHandle, const Htuple Row, const Htuple Column)

void DragRegion3(const HObject& SourceRegion, const HObject& MaskRegion, HObject* DestinationRegion, const HTuple& WindowHandle, const HTuple& Row, const HTuple& Column)

HRegion HRegion::DragRegion3(const HRegion& MaskRegion, const HWindow& WindowHandle, Hlong Row, Hlong Column) const

HRegion HWindow::DragRegion3(const HRegion& SourceRegion, const HRegion& MaskRegion, Hlong Row, Hlong Column) const

static void HOperatorSet.DragRegion3(HObject sourceRegion, HObject maskRegion, out HObject destinationRegion, HTuple windowHandle, HTuple row, HTuple column)

HRegion HRegion.DragRegion3(HRegion maskRegion, HWindow windowHandle, int row, int column)

HRegion HWindow.DragRegion3(HRegion sourceRegion, HRegion maskRegion, int row, int column)

def drag_region3(source_region: HObject, mask_region: HObject, window_handle: HHandle, row: int, column: int) -> HObject

Description

You use drag_region3drag_region3DragRegion3DragRegion3DragRegion3drag_region3 to move a region on the display by mouse. It corresponds to the operator drag_region2drag_region2DragRegion2DragRegion2DragRegion2drag_region2 with the enhancement, that all points are specified which can be entered by mouse. If you move the mouse outside of this area (MaskRegionMaskRegionMaskRegionMaskRegionmaskRegionmask_region), the region on the point with the smallest distance inside MaskRegionMaskRegionMaskRegionMaskRegionmaskRegionmask_region will be displayed.

Attention

The region's gray values are not moved. With moving the input region it is not sure whether the gray values of the output regions are filled reasonable. This may occur if the gray values of the input regions do not comprise the whole image.

Execution Information

Parameters

SourceRegionSourceRegionSourceRegionSourceRegionsourceRegionsource_region (input_object)  region-array objectHRegionHObjectHRegionHobject

Regions to move.

MaskRegionMaskRegionMaskRegionMaskRegionmaskRegionmask_region (input_object)  region-array objectHRegionHObjectHRegionHobject

Points on which it is allowed for a region to move.

DestinationRegionDestinationRegionDestinationRegionDestinationRegiondestinationRegiondestination_region (output_object)  region-array objectHRegionHObjectHRegionHobject *

Moved regions.

WindowHandleWindowHandleWindowHandleWindowHandlewindowHandlewindow_handle (input_control)  window HWindow, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Window handle.

RowRowRowRowrowrow (input_control)  point.y HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Row index of the reference point.

Default value: 100

Suggested values: 0, 64, 128, 256, 512

Typical range of values: 0 ≤ Row Row Row Row row row ≤ 1024

ColumnColumnColumnColumncolumncolumn (input_control)  point.x HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Column index of the reference point.

Default value: 100

Suggested values: 0, 64, 128, 256, 512

Typical range of values: 0 ≤ Column Column Column Column column column ≤ 1024

Result

drag_region3drag_region3DragRegion3DragRegion3DragRegion3drag_region3 returns TRUE, if a region is entered, if the window is valid and the needed drawing mode (see set_insertset_insertSetInsertSetInsertSetInsertset_insert) is available. If necessary, an exception is raised. You may determine the behavior after an empty input with set_system(::'no_object_result',<Result>:)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>).

Possible Predecessors

open_windowopen_windowOpenWindowOpenWindowOpenWindowopen_window, get_mpositionget_mpositionGetMpositionGetMpositionGetMpositionget_mposition

Possible Successors

reduce_domainreduce_domainReduceDomainReduceDomainReduceDomainreduce_domain, disp_regiondisp_regionDispRegionDispRegionDispRegiondisp_region, set_coloredset_coloredSetColoredSetColoredSetColoredset_colored, set_line_widthset_line_widthSetLineWidthSetLineWidthSetLineWidthset_line_width, set_drawset_drawSetDrawSetDrawSetDrawset_draw, set_insertset_insertSetInsertSetInsertSetInsertset_insert, affine_trans_imageaffine_trans_imageAffineTransImageAffineTransImageAffineTransImageaffine_trans_image

Alternatives

get_mpositionget_mpositionGetMpositionGetMpositionGetMpositionget_mposition, move_regionmove_regionMoveRegionMoveRegionMoveRegionmove_region, drag_region1drag_region1DragRegion1DragRegion1DragRegion1drag_region1, drag_region2drag_region2DragRegion2DragRegion2DragRegion2drag_region2

See also

set_insertset_insertSetInsertSetInsertSetInsertset_insert, set_drawset_drawSetDrawSetDrawSetDrawset_draw, affine_trans_imageaffine_trans_imageAffineTransImageAffineTransImageAffineTransImageaffine_trans_image

Module

Foundation