orientation_region orientation_region OrientationRegion OrientationRegion (Operator)
Name
orientation_region orientation_region OrientationRegion OrientationRegion
— Orientation of a region.
Signature
Herror orientation_region (const Hobject Regions , double* Phi )
Herror T_orientation_region (const Hobject Regions , Htuple* Phi )
Description
The operator orientation_region orientation_region OrientationRegion OrientationRegion OrientationRegion
calculates the
orientation of the region. The operator is based on elliptic_axis elliptic_axis EllipticAxis EllipticAxis EllipticAxis
.
In addition the point on the contour with maximal distance to the
center of gravity is calculated. If, in the rotated coordinate system,
the column coordinate of this point is less than the column coordinate
of the center of gravity, the value of
is added to the angle.
In the documentation of this chapter (Regions / Features ), you can
find an image illustrating regions which vary in their orientation.
If more than one region is passed the results are stored in tuples, the index
of a value in the tuple corresponding to the index of a region in the
input.
In case of empty region all parameters have the value 0.0 if no other
behavior was set
(see 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>)
).
Execution Information
Multithreading type: reentrant (runs in parallel with non-exclusive operators).
Multithreading scope: global (may be called from any thread).
Automatically parallelized on tuple level.
Parameters
Regions Regions Regions Regions regions
(input_object) region(-array) →
object HRegion HRegion Hobject
Region(s) to be examined.
Phi Phi Phi Phi phi
(output_control) angle.rad(-array) →
HTuple HTuple Htuple (real) (double ) (double ) (double )
Orientation of region (arc measure).
Assertion: - pi <= Phi && Phi < pi
Complexity
If F is the area of a region the mean runtime
complexity is O(sqrt(F)).
Result
The operator orientation_region orientation_region OrientationRegion OrientationRegion OrientationRegion
returns the value 2 (H_MSG_TRUE) if the input
is not empty. The behavior in case of empty input (no input regions available)
is set via the operator
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>)
.
The behavior in case of empty region (the region is the empty set) is set via
set_system('empty_region_result',<Result>) set_system("empty_region_result",<Result>) SetSystem("empty_region_result",<Result>) SetSystem("empty_region_result",<Result>) SetSystem("empty_region_result",<Result>)
.
If necessary an exception is raised.
Possible Predecessors
threshold threshold Threshold Threshold Threshold
,
regiongrowing regiongrowing Regiongrowing Regiongrowing Regiongrowing
,
connection connection Connection Connection Connection
Possible Successors
disp_arrow disp_arrow DispArrow DispArrow DispArrow
Alternatives
elliptic_axis elliptic_axis EllipticAxis EllipticAxis EllipticAxis
,
smallest_rectangle2 smallest_rectangle2 SmallestRectangle2 SmallestRectangle2 SmallestRectangle2
See also
moments_region_2nd moments_region_2nd MomentsRegion2nd MomentsRegion2nd MomentsRegion2nd
,
line_orientation line_orientation LineOrientation LineOrientation LineOrientation
Module
Foundation