KlassenKlassenKlassenKlassen | | | | Operatoren

orientation_regionorientation_regionOrientationRegionorientation_regionOrientationRegionOrientationRegion (Operator)

Name

orientation_regionorientation_regionOrientationRegionorientation_regionOrientationRegionOrientationRegion — Ermitteln Orientierung einer Region.

Signatur

orientation_region(Regions : : : Phi)

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

void OrientationRegion(const HObject& Regions, HTuple* Phi)

HTuple HRegion::OrientationRegion() const

void HOperatorSetX.OrientationRegion(
[in] IHUntypedObjectX* Regions, [out] VARIANT* Phi)

VARIANT HRegionX.OrientationRegion()

static void HOperatorSet.OrientationRegion(HObject regions, out HTuple phi)

HTuple HRegion.OrientationRegion()

Beschreibung

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 zu dem Winkel hinzugezählt.

In der Dokumentation des Operators region_featuresregion_featuresRegionFeaturesregion_featuresRegionFeaturesRegionFeatures finden Sie ein Bild mit Regionen, die sich in ihrer Orientierung unterscheiden.

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>)).

Parallelisierung

Parameter

RegionsRegionsRegionsRegionsRegionsregions (input_object)  region(-array) objectHRegionHRegionHRegionHRegionXHobject

Zu untersuchende Region(en).

PhiPhiPhiPhiPhiphi (output_control)  real(-array) HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Orientierung der Region (Bogenmaß).

Zusicherung: - pi <= Phi && Phi < pi

Komplexität

Sei F die Fläche einer Region, dann beträgt die Laufzeitkomplexität im Mittel O(sqrt(F)).

Ergebnis

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.

Vorgänger

thresholdthresholdThresholdthresholdThresholdThreshold, regiongrowingregiongrowingRegiongrowingregiongrowingRegiongrowingRegiongrowing, connectionconnectionConnectionconnectionConnectionConnection

Nachfolger

disp_arrowdisp_arrowDispArrowdisp_arrowDispArrowDispArrow

Alternativen

elliptic_axiselliptic_axisEllipticAxiselliptic_axisEllipticAxisEllipticAxis, smallest_rectangle2smallest_rectangle2SmallestRectangle2smallest_rectangle2SmallestRectangle2SmallestRectangle2

Siehe auch

moments_region_2ndmoments_region_2ndMomentsRegion2ndmoments_region_2ndMomentsRegion2ndMomentsRegion2nd, line_orientationline_orientationLineOrientationline_orientationLineOrientationLineOrientation

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren