orientation_region orientation_region OrientationRegion OrientationRegion orientation_region (Operator)
Name
orientation_region orientation_region OrientationRegion OrientationRegion orientation_region
— Orientation of a region.
Signature
Herror orientation_region (const Hobject Regions , double* Phi )
Herror T_orientation_region (const Hobject Regions , Htuple* Phi )
def orientation_region (regions : HObject) -> Sequence[float]
def orientation_region_s (regions : HObject) -> float
Description
The operator orientation_region orientation_region OrientationRegion OrientationRegion OrientationRegion orientation_region
calculates the
orientation of the region. The operator is based on elliptic_axis elliptic_axis EllipticAxis EllipticAxis EllipticAxis elliptic_axis
.
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>) set_system("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 regions
(input_object) region(-array) →
object HRegion HObject HRegion Hobject
Region(s) to be examined.
Phi Phi Phi Phi phi phi
(output_control) angle.rad(-array) →
HTuple Sequence[float] 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 orientation_region
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>) set_system("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>) set_system("empty_region_result",<Result>)
.
If necessary an exception is raised.
Possible Predecessors
threshold threshold Threshold Threshold Threshold threshold
,
regiongrowing regiongrowing Regiongrowing Regiongrowing Regiongrowing regiongrowing
,
connection connection Connection Connection Connection connection
Possible Successors
disp_arrow disp_arrow DispArrow DispArrow DispArrow disp_arrow
Alternatives
elliptic_axis elliptic_axis EllipticAxis EllipticAxis EllipticAxis elliptic_axis
,
smallest_rectangle2 smallest_rectangle2 SmallestRectangle2 SmallestRectangle2 SmallestRectangle2 smallest_rectangle2
See also
moments_region_2nd moments_region_2nd MomentsRegion2nd MomentsRegion2nd MomentsRegion2nd moments_region_2nd
,
line_orientation line_orientation LineOrientation LineOrientation LineOrientation line_orientation
Module
Foundation