KlassenKlassenKlassenKlassen | | | | Operatoren

eccentricity_points_xldeccentricity_points_xldEccentricityPointsXldeccentricity_points_xldEccentricityPointsXldEccentricityPointsXld (Operator)

Name

eccentricity_points_xldeccentricity_points_xldEccentricityPointsXldeccentricity_points_xldEccentricityPointsXldEccentricityPointsXld — Anisometrie von Konturen oder Polygonen, die wie Punktwolken behandelt werden.

Signatur

eccentricity_points_xld(XLD : : : Anisometry)

Herror eccentricity_points_xld(const Hobject XLD, double* Anisometry)

Herror T_eccentricity_points_xld(const Hobject XLD, Htuple* Anisometry)

Herror eccentricity_points_xld(Hobject XLD, double* Anisometry)

Herror eccentricity_points_xld(Hobject XLD, HTuple* Anisometry)

double HXLD::EccentricityPointsXld() const

HTuple HXLDArray::EccentricityPointsXld() const

void EccentricityPointsXld(const HObject& XLD, HTuple* Anisometry)

HTuple HXLD::EccentricityPointsXld() const

void HOperatorSetX.EccentricityPointsXld(
[in] IHUntypedObjectX* XLD, [out] VARIANT* Anisometry)

VARIANT HXLDX.EccentricityPointsXld()

VARIANT HXLDContX.EccentricityPointsXld()

VARIANT HXLDPolyX.EccentricityPointsXld()

VARIANT HXLDParaX.EccentricityPointsXld()

VARIANT HXLDModParaX.EccentricityPointsXld()

VARIANT HXLDExtParaX.EccentricityPointsXld()

static void HOperatorSet.EccentricityPointsXld(HObject XLD, out HTuple anisometry)

HTuple HXLD.EccentricityPointsXld()

Beschreibung

eccentricity_points_xldeccentricity_points_xldEccentricityPointsXldeccentricity_points_xldEccentricityPointsXldEccentricityPointsXld berechnet das Formmerkmal AnisometryAnisometryAnisometryAnisometryAnisometryanisometry, das aus den geometrischen Momenten abgeleitet wird. Im Gegensatz zu eccentricity_xldeccentricity_xldEccentricityXldeccentricity_xldEccentricityXldEccentricityXld werden nur die Eigenschaften der Konturpunkte, nicht die der durch die Kontur eingeschlossenen Fläche berechnet. Die Reihenfolge der Kontur- oder Polygonpunkte wird nicht berücksichtigt. Bei geschlossenen Konturen oder Polygonen (Anfangspunkt = Endpunkt) wird der Endpunkt der Kontur oder des Polygons nicht berücksichtigt, da er sonst doppeltes Gewicht erhielte.

Ist die Kontur XLDXLDXLDXLDXLDXLD nicht kreuzungsfrei oder kann sie nicht kreuzungsfrei durch eine Line vom End- zum Anfangspunkt geschlossen werden, liefert eccentricity_points_xldeccentricity_points_xldEccentricityPointsXldeccentricity_points_xldEccentricityPointsXldEccentricityPointsXld immer noch sinnvolle Ergebnisse und ist in diesem Fall eccentricity_xldeccentricity_xldEccentricityXldeccentricity_xldEccentricityXldEccentricityXld vorzuziehen. Ob sich die Konturen oder Polygone selbst schneiden, kann leicht mit test_self_intersection_xldtest_self_intersection_xldTestSelfIntersectionXldtest_self_intersection_xldTestSelfIntersectionXldTestSelfIntersectionXld überprüft werden.

Berechnung: Seien die Ellipsenradien Ra, Rb (siehe elliptic_axis_points_xldelliptic_axis_points_xldEllipticAxisPointsXldelliptic_axis_points_xldEllipticAxisPointsXldEllipticAxisPointsXld) gegeben, dann gilt:

Die Anisometrie eines Kreises ist 1.0.

Wird mehr als eine Kontur oder ein Polygon übergeben, dann werden die Ergebnisse für die Anisometrie in einem Tupel in der Reihenfolge ihrer entsprechenden Konturen bzw. Polygone in XLDXLDXLDXLDXLDXLD abgespeichert.

Parallelisierung

Parameter

XLDXLDXLDXLDXLDXLD (input_object)  xld(-array) objectHXLDHXLDHXLDHXLDXHobject

Zu untersuchende Konturen bzw. Polygone.

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

Anisometrie der Konturen bzw. Polygone.

Zusicherung: Anisometry >= 1.0

Ergebnis

eccentricity_points_xldeccentricity_points_xldEccentricityPointsXldeccentricity_points_xldEccentricityPointsXldEccentricityPointsXld liefert den Wert 2 (H_MSG_TRUE), falls die Eingabe nicht leer ist. Das Verhalten bei leerer Eingabe (keine Eingabekontur 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. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

gen_contours_skeleton_xldgen_contours_skeleton_xldGenContoursSkeletonXldgen_contours_skeleton_xldGenContoursSkeletonXldGenContoursSkeletonXld, edges_sub_pixedges_sub_pixEdgesSubPixedges_sub_pixEdgesSubPixEdgesSubPix, threshold_sub_pixthreshold_sub_pixThresholdSubPixthreshold_sub_pixThresholdSubPixThresholdSubPix, gen_contour_polygon_xldgen_contour_polygon_xldGenContourPolygonXldgen_contour_polygon_xldGenContourPolygonXldGenContourPolygonXld, test_self_intersection_xldtest_self_intersection_xldTestSelfIntersectionXldtest_self_intersection_xldTestSelfIntersectionXldTestSelfIntersectionXld

Alternativen

eccentricity_xldeccentricity_xldEccentricityXldeccentricity_xldEccentricityXldEccentricityXld

Siehe auch

elliptic_axis_points_xldelliptic_axis_points_xldEllipticAxisPointsXldelliptic_axis_points_xldEllipticAxisPointsXldEllipticAxisPointsXld, moments_region_2ndmoments_region_2ndMomentsRegion2ndmoments_region_2ndMomentsRegion2ndMomentsRegion2nd, select_shape_xldselect_shape_xldSelectShapeXldselect_shape_xldSelectShapeXldSelectShapeXld

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren