eccentricity_points_xldeccentricity_points_xldEccentricityPointsXldEccentricityPointsXldeccentricity_points_xld (Operator)

Name

eccentricity_points_xldeccentricity_points_xldEccentricityPointsXldEccentricityPointsXldeccentricity_points_xld — 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()

def eccentricity_points_xld(xld: HObject) -> Sequence[float]

def eccentricity_points_xld_s(xld: HObject) -> float

Beschreibung

eccentricity_points_xldeccentricity_points_xldEccentricityPointsXldEccentricityPointsXldEccentricityPointsXldeccentricity_points_xld berechnet das Formmerkmal AnisometryAnisometryAnisometryAnisometryanisometryanisometry, das aus den geometrischen Momenten abgeleitet wird. Im Gegensatz zu eccentricity_xldeccentricity_xldEccentricityXldEccentricityXldEccentricityXldeccentricity_xld 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_xldEccentricityPointsXldEccentricityPointsXldEccentricityPointsXldeccentricity_points_xld immer noch sinnvolle Ergebnisse und ist in diesem Fall eccentricity_xldeccentricity_xldEccentricityXldEccentricityXldEccentricityXldeccentricity_xld vorzuziehen. Ob sich die Konturen oder Polygone selbst schneiden, kann leicht mit test_self_intersection_xldtest_self_intersection_xldTestSelfIntersectionXldTestSelfIntersectionXldTestSelfIntersectionXldtest_self_intersection_xld überprüft werden.

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

Ausführungsinformationen

Parameter

XLDXLDXLDXLDXLDxld (input_object)  xld(-array) objectHXLDHObjectHXLDHobject

Zu untersuchende Konturen bzw. Polygone.

AnisometryAnisometryAnisometryAnisometryanisometryanisometry (output_control)  real(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Anisometrie der Konturen bzw. Polygone.

Zusicherung: Anisometry >= 1.0

Ergebnis

eccentricity_points_xldeccentricity_points_xldEccentricityPointsXldEccentricityPointsXldEccentricityPointsXldeccentricity_points_xld liefert den Wert 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>)set_system("no_object_result",<Result>) festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

gen_contours_skeleton_xldgen_contours_skeleton_xldGenContoursSkeletonXldGenContoursSkeletonXldGenContoursSkeletonXldgen_contours_skeleton_xld, edges_sub_pixedges_sub_pixEdgesSubPixEdgesSubPixEdgesSubPixedges_sub_pix, threshold_sub_pixthreshold_sub_pixThresholdSubPixThresholdSubPixThresholdSubPixthreshold_sub_pix, gen_contour_polygon_xldgen_contour_polygon_xldGenContourPolygonXldGenContourPolygonXldGenContourPolygonXldgen_contour_polygon_xld, test_self_intersection_xldtest_self_intersection_xldTestSelfIntersectionXldTestSelfIntersectionXldTestSelfIntersectionXldtest_self_intersection_xld

Alternativen

eccentricity_xldeccentricity_xldEccentricityXldEccentricityXldEccentricityXldeccentricity_xld

Siehe auch

elliptic_axis_points_xldelliptic_axis_points_xldEllipticAxisPointsXldEllipticAxisPointsXldEllipticAxisPointsXldelliptic_axis_points_xld, moments_region_2ndmoments_region_2ndMomentsRegion2ndMomentsRegion2ndMomentsRegion2ndmoments_region_2nd, select_shape_xldselect_shape_xldSelectShapeXldSelectShapeXldSelectShapeXldselect_shape_xld

Modul

Foundation