Name
orientation_regionorientation_regionOrientationRegionorientation_regionOrientationRegionOrientationRegion — Ermitteln Orientierung einer Region.
Herror orientation_region(const Hobject Regions, double* Phi)
Herror T_orientation_region(const Hobject Regions, Htuple* Phi)
Herror orientation_region(Hobject Regions, double* Phi)
Herror orientation_region(Hobject Regions, HTuple* Phi)
double HRegion::OrientationRegion() const
HTuple HRegionArray::OrientationRegion() const
orientation_regionorientation_regionOrientationRegionorientation_regionOrientationRegionOrientationRegion berechnet die Orientierung (PhiPhiPhiPhiPhiphi)
der Region. Das Verfahren basiert auf dem Winkel der mit
elliptic_axiselliptic_axisEllipticAxiselliptic_axisEllipticAxisEllipticAxis bestimmt wird. Es wird jedoch zusätzlich der
Punkt auf dem Rand mit maximalem Abstand zum Schwerpunkt der Region
bestimmt. Ist dessen Spaltenkoordinate im gedrehten System kleiner als
die Spaltenkoordinate des Schwerpunkts so wird
Pi zu dem Winkel hinzugezählt.
Wird mehr als eine Region übergeben, dann werden die Ergebnisse in
Tupeln abgespeichert, wobei der Index eines Wertes in dem Tupel
dem Index einer Region in der Eingabe entspricht.
Bei leerer Region haben alle Parameter den Wert 0.0, soweit kein
anderes Verhalten eingestellt wurde
(siehe set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)).
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Automatisch parallelisiert auf Tupelebene.
Zu untersuchende Region(en).
Orientierung der Region (Bogenmaß).
Zusicherung: - pi <= Phi && Phi < pi
Sei F die Fläche einer Region, dann beträgt die
Laufzeitkomplexität im Mittel O(sqrt(F)).
orientation_regionorientation_regionOrientationRegionorientation_regionOrientationRegionOrientationRegion liefert den Wert 2 (H_MSG_TRUE), falls die Eingabe nicht
leer ist. Das Verhalten bei leerer Eingabe (keine Eingaberegionen vorhanden)
lässt sich mittels set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)
festlegen. Das Verhalten bei einer leeren Region (Region ist die leere Menge)
wird mit set_system('empty_region_result',<Result>)set_system("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)set_system("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>) bestimmt.
Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
thresholdthresholdThresholdthresholdThresholdThreshold,
regiongrowingregiongrowingRegiongrowingregiongrowingRegiongrowingRegiongrowing,
connectionconnectionConnectionconnectionConnectionConnection
disp_arrowdisp_arrowDispArrowdisp_arrowDispArrowDispArrow
elliptic_axiselliptic_axisEllipticAxiselliptic_axisEllipticAxisEllipticAxis,
smallest_rectangle2smallest_rectangle2SmallestRectangle2smallest_rectangle2SmallestRectangle2SmallestRectangle2
moments_region_2ndmoments_region_2ndMomentsRegion2ndmoments_region_2ndMomentsRegion2ndMomentsRegion2nd,
line_orientationline_orientationLineOrientationline_orientationLineOrientationLineOrientation
Foundation