Rotate and scale a region.
rotate_region1 rotates the region given in Region counter-clockwise by an angle of Phi. Furthermore, it is scaled by a scale factor of Factor. In both cases, the fixed point of the transformation is (CenterRow,CenterCol).
rotate_region1 in general is not invertible (clipping and discretization during rotation and scaling).
Region (input_object) |
region(-array) -> object |
Region to be rotated and scaled. |
RegionRotate (output_object) |
region(-array) -> object |
Transformed output region. | |
Number of elements: RegionRotate == Region |
CenterRow (input_control) |
point.y -> integer |
Row coordinate of the transformation center. | |
Default value: 256 | |
Suggested values: 10, 50, 100, 200, 256, 300, 400, 512, 600, 800 | |
Range of values: 0 <= CenterRow <= 1024 (lin) | |
Minimum increment: 1 | |
Recommended increment: 10 |
CenterCol (input_control) |
point.x -> integer |
Column coordinate of the transformation center. | |
Default value: 256 | |
Suggested values: 10, 50, 100, 200, 256, 300, 400, 512, 600, 800 | |
Range of values: 0 <= CenterCol <= 1024 (lin) | |
Minimum increment: 1 | |
Recommended increment: 10 |
Phi (input_control) |
angle.rad -> real |
Rotation angle (in radians). | |
Default value: 1.5 | |
Suggested values: -3.1415, -2.3462, -1.57079, -0.78539, 0, 0.78539, 1.57079, 2.3462, 3.1415 | |
Range of values: -3.14156 <= Phi <= 3.14156 (lin) | |
Minimum increment: 0.0001 | |
Recommended increment: 0.05 |
Factor (input_control) |
real -> real |
Scale factor. | |
Default value: 1.0 | |
Suggested values: 0.01, 0.05, 0.1, 0.2, 0.3, 0.5, 0.7, 1.0, 2.5, 4.0, 6.0, 10.0, 20.0 | |
Range of values: 0.0 <= Factor <= 100.0 (lin) | |
Minimum increment: 0.0001 | |
Recommended increment: 0.1 | |
Restriction: Factor > 0.0 |
rotate_region1 returns TRUE if all parameters are correct. The behavior in case of empty input (no regions given) can be set via set_system(::'no_object_result',<Result>:), the behavior in case of an empty input region via set_system(::'empty_region_result',<Result>:), and the behavior in case of an empty result region via set_system(::'store_empty_region',<true/false>:). If necessary, an exception is raised.
threshold__, connection, regiongrowing__, pouring
move, image_transform__, zoom_region