drag_region1T_drag_region1DragRegion1DragRegion1drag_region1 (算子)
名称
drag_region1T_drag_region1DragRegion1DragRegion1drag_region1 — 区域的交互式移动。
警告
This operator does not work in an HDevelop graphics window opened with
dev_open_window.
签名
描述
drag_region1drag_region1DragRegion1DragRegion1DragRegion1drag_region1 is used to move a region on the display by mouse.
Calling drag_region1drag_region1DragRegion1DragRegion1DragRegion1drag_region1 turns the region visible as soon as the left
mouse button is pressed. Therefore the region's edges are displayed only.
As representation mode the mode 'not' (see set_drawset_drawSetDrawSetDrawSetDrawset_draw) is used
during procedure's permanence.
During the movement the cursor resides in the region's barycenter.
If you move the mouse with pressed left mouse button, the depicted region
follows - delayed - this movement. If you press the right mouse button you
terminate drag_region1drag_region1DragRegion1DragRegion1DragRegion1drag_region1. The depicted region disappears from the
display. Output is a region which corresponds to the last position on the display.
You may pass even several regions at once.
The operator affine_trans_imageaffine_trans_imageAffineTransImageAffineTransImageAffineTransImageaffine_trans_image moves the gray values.
注意
Gray values of regions 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.
执行信息
- 多线程类型:可重入(与非独占算子并行运行)。
- 多线程作用域:全局(可从任何线程调用)。
- 未采用并行化处理。
参数
SourceRegionSourceRegionSourceRegionSourceRegionsourceRegionsource_region (输入对象) region-array → objectHRegionHObjectHRegionHobject
Regions to move.
DestinationRegionDestinationRegionDestinationRegionDestinationRegiondestinationRegiondestination_region (输出对象) region-array → objectHRegionHObjectHRegionHobject *
Moved Regions.
WindowHandleWindowHandleWindowHandleWindowHandlewindowHandlewindow_handle (输入控制) window → HWindow, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
窗口句柄。
示例(HDevelop)
draw_region(Obj,WindowHandle)
dev_set_color ('green')
drag_region1(Obj,New,WindowHandle)
dev_display(New)
get_region_runs (Obj, Rows1, ColumnBegins1, ColumnEnds1)
get_region_runs (New, Rows2, ColumnBegins2, ColumnEnds2)
Row1 := Rows1[0]
Column1 := ColumnBegins1[0]
Row2 := Rows2[0]
Column2 := ColumnBegins2[0]
dev_set_color ('white')
gen_arrow_contour_xld (Arrow, Row1,Column1,Row2,Column2, 5, 5)
dev_display (Arrow)
示例(C)
draw_region(&Obj,WindowHandle);
drag_region1(Obj,&New,WindowHandle);
disp_region(New,WindowHandle);
示例(HDevelop)
draw_region(Obj,WindowHandle)
dev_set_color ('green')
drag_region1(Obj,New,WindowHandle)
dev_display(New)
get_region_runs (Obj, Rows1, ColumnBegins1, ColumnEnds1)
get_region_runs (New, Rows2, ColumnBegins2, ColumnEnds2)
Row1 := Rows1[0]
Column1 := ColumnBegins1[0]
Row2 := Rows2[0]
Column2 := ColumnBegins2[0]
dev_set_color ('white')
gen_arrow_contour_xld (Arrow, Row1,Column1,Row2,Column2, 5, 5)
dev_display (Arrow)
示例(HDevelop)
draw_region(Obj,WindowHandle)
dev_set_color ('green')
drag_region1(Obj,New,WindowHandle)
dev_display(New)
get_region_runs (Obj, Rows1, ColumnBegins1, ColumnEnds1)
get_region_runs (New, Rows2, ColumnBegins2, ColumnEnds2)
Row1 := Rows1[0]
Column1 := ColumnBegins1[0]
Row2 := Rows2[0]
Column2 := ColumnBegins2[0]
dev_set_color ('white')
gen_arrow_contour_xld (Arrow, Row1,Column1,Row2,Column2, 5, 5)
dev_display (Arrow)
示例(HDevelop)
draw_region(Obj,WindowHandle)
dev_set_color ('green')
drag_region1(Obj,New,WindowHandle)
dev_display(New)
get_region_runs (Obj, Rows1, ColumnBegins1, ColumnEnds1)
get_region_runs (New, Rows2, ColumnBegins2, ColumnEnds2)
Row1 := Rows1[0]
Column1 := ColumnBegins1[0]
Row2 := Rows2[0]
Column2 := ColumnBegins2[0]
dev_set_color ('white')
gen_arrow_contour_xld (Arrow, Row1,Column1,Row2,Column2, 5, 5)
dev_display (Arrow)
结果
drag_region1drag_region1DragRegion1DragRegion1DragRegion1drag_region1 returns 2 (
H_MSG_TRUE)
, if a region is entered, the window
is valid and the needed drawing mode (see set_insertset_insertSetInsertSetInsertSetInsertset_insert)
is available。如有必要,则抛出异常。
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>)。
可能的前趋
open_windowopen_windowOpenWindowOpenWindowOpenWindowopen_window
可能的后继
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
替代
get_mpositionget_mpositionGetMpositionGetMpositionGetMpositionget_mposition,
move_regionmove_regionMoveRegionMoveRegionMoveRegionmove_region
另见
set_insertset_insertSetInsertSetInsertSetInsertset_insert,
set_drawset_drawSetDrawSetDrawSetDrawset_draw,
affine_trans_imageaffine_trans_imageAffineTransImageAffineTransImageAffineTransImageaffine_trans_image
模块
基础