Interactive movement of a region with restriction of positions.
You use move_region3 to move a region on the display by mouse. It corresponds to the procedure move_region2 with the enhancement, that all points are specified which can be entered by mouse. If you move the mouse outside of this area (MaskRegion), the region on the point with the smallest distance inside MaskRegion will be displayed.
The region's grey values are not moved. As the input region is moved it is not sure whether the grey values of the output regions are filled reasonable. This may occur if the grey values of the input regions do not comprise the whole image.
SourceRegion (input_object) |
region-array -> object |
Regions to move. |
MaskRegion (input_object) |
region-array -> object |
Points on which it is allowed for a region to move. |
DestinationRegion (output_object) |
region-array -> object |
Moved regions. |
Row (input_control) |
point.y -> integer |
Row index of the reference point. | |
Default value: 100 | |
Suggested values: 0, 64, 128, 256, 512 | |
Range of values: 0 <= Row <= 1024 |
Column (input_control) |
point.x -> integer |
Column index of the reference point. | |
Default value: 100 | |
Suggested values: 0, 64, 128, 256, 512 | |
Range of values: 0 <= Column <= 1024 |
move_region3 returns TRUE, if a region is entered, if a window is activated and if the needed drawing mode (see set_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>:).
open_window, set_window, get_mposition
reduce_domain, disp_region, set_colored, set_line_width, set_draw, set_insert, image_transform__
get_mposition, move_region1, move_region2
set_insert, set_draw, image_scale, image_transform__