eccentricity_points_xldeccentricity_points_xldEccentricityPointsXldEccentricityPointsXld (Operator)

Name

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

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

HTuple HXLD::EccentricityPointsXld() const

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

HTuple HXLD.EccentricityPointsXld()

Beschreibung

eccentricity_points_xldeccentricity_points_xldEccentricityPointsXldEccentricityPointsXldEccentricityPointsXld berechnet das Formmerkmal AnisometryAnisometryAnisometryAnisometryanisometry, das aus den geometrischen Momenten abgeleitet wird. Im Gegensatz zu eccentricity_xldeccentricity_xldEccentricityXldEccentricityXldEccentricityXld 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 XLDXLDXLDXLDXLD nicht kreuzungsfrei oder kann sie nicht kreuzungsfrei durch eine Line vom End- zum Anfangspunkt geschlossen werden, liefert eccentricity_points_xldeccentricity_points_xldEccentricityPointsXldEccentricityPointsXldEccentricityPointsXld immer noch sinnvolle Ergebnisse und ist in diesem Fall eccentricity_xldeccentricity_xldEccentricityXldEccentricityXldEccentricityXld vorzuziehen. Ob sich die Konturen oder Polygone selbst schneiden, kann leicht mit test_self_intersection_xldtest_self_intersection_xldTestSelfIntersectionXldTestSelfIntersectionXldTestSelfIntersectionXld überprüft werden.

Berechnung: Seien die Ellipsenradien Ra, Rb (siehe elliptic_axis_points_xldelliptic_axis_points_xldEllipticAxisPointsXldEllipticAxisPointsXldEllipticAxisPointsXld) 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 XLDXLDXLDXLDXLD abgespeichert.

Ausführungsinformationen

Parameter

XLDXLDXLDXLDXLD (input_object)  xld(-array) objectHXLDHXLDHobject

Zu untersuchende Konturen bzw. Polygone.

AnisometryAnisometryAnisometryAnisometryanisometry (output_control)  real(-array) HTupleHTupleHtuple (real) (double) (double) (double)

Anisometrie der Konturen bzw. Polygone.

Zusicherung: Anisometry >= 1.0

Ergebnis

eccentricity_points_xldeccentricity_points_xldEccentricityPointsXldEccentricityPointsXldEccentricityPointsXld 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>)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_xldGenContoursSkeletonXldGenContoursSkeletonXldGenContoursSkeletonXld, edges_sub_pixedges_sub_pixEdgesSubPixEdgesSubPixEdgesSubPix, threshold_sub_pixthreshold_sub_pixThresholdSubPixThresholdSubPixThresholdSubPix, gen_contour_polygon_xldgen_contour_polygon_xldGenContourPolygonXldGenContourPolygonXldGenContourPolygonXld, test_self_intersection_xldtest_self_intersection_xldTestSelfIntersectionXldTestSelfIntersectionXldTestSelfIntersectionXld

Alternativen

eccentricity_xldeccentricity_xldEccentricityXldEccentricityXldEccentricityXld

Siehe auch

elliptic_axis_points_xldelliptic_axis_points_xldEllipticAxisPointsXldEllipticAxisPointsXldEllipticAxisPointsXld, moments_region_2ndmoments_region_2ndMomentsRegion2ndMomentsRegion2ndMomentsRegion2nd, select_shape_xldselect_shape_xldSelectShapeXldSelectShapeXldSelectShapeXld

Modul

Foundation