Reflect a region about a point.
::transpose_region reflects a region about a point. The fixed point is given by Column and Row. The image P' of a point P is determined by the following requirement:
If P = S, then P' = S, i.e., the point S is the fixed point of the mapping. If P != S, S is the center point of a line segment connecting P and P'. Therefore, the following equations result:
x' = 2 * Column - x
y' = 2 * Row - y.
If Row and Column are set to the origin, the
in morphology often used transposition results. Hence
::transpose_region is often used to reflect (transpose) a
structuring element.
|
Region (input_object) |
region(-array) -> Hobject: HRegion(Array) |
| Region to be reflected. | |
|
Transposed (output_object) |
region(-array) -> Hobject * : HRegion(Array) |
| Transposed region. | |
|
Row (input_control) |
point.y -> HTuple.long |
| Row coordinate of the reference point. | |
| Default value: 0 | |
| Suggested values: 0, 64, 128, 256, 512 | |
| Typical range of values: 0 <= Row <= 511 (lin) | |
| Minimum increment: 1 | |
|
Recommended increment: 1 | |
|
Column (input_control) |
point.x -> HTuple.long |
| Column coordinate of the reference point. | |
| Default value: 0 | |
| Suggested values: 0, 64, 128, 256, 512 | |
| Typical range of values: 0 <= Column <= 511 (lin) | |
| Minimum increment: 1 | |
|
Recommended increment: 1 | |
Let F be the area of the input region. Then the runtime complexity for one region is
O(sqrt(F)) .
::transpose_region returns H_MSG_TRUE if all parameters are correct. The behavior in case of empty or no input region can be set via:
a) no region: set_system('no_object_result',<RegionResult>)
b) empty region: set_system('empty_region_result',<RegionResult>)
Otherwise, an exception is raised.
::reduce_domain, ::select_shape, ::area_center, ::connection
::dilation1, ::opening, ::closing
Morphology