Name
moments_any_points_xldmoments_any_points_xldMomentsAnyPointsXldmoments_any_points_xldMomentsAnyPointsXldMomentsAnyPointsXld — Geometrische Momente beliebiger Ordnung von Konturen oder Polygonen,
die wie Punktwolken behandelt werden.
Herror moments_any_points_xld(const Hobject XLD, const char* Mode, double Area, double CenterRow, double CenterCol, const Hlong P, const Hlong Q, double* M)
Herror T_moments_any_points_xld(const Hobject XLD, const Htuple Mode, const Htuple Area, const Htuple CenterRow, const Htuple CenterCol, const Htuple P, const Htuple Q, Htuple* M)
Herror moments_any_points_xld(Hobject XLD, const HTuple& Mode, const HTuple& Area, const HTuple& CenterRow, const HTuple& CenterCol, const HTuple& P, const HTuple& Q, double* M)
Herror moments_any_points_xld(Hobject XLD, const HTuple& Mode, const HTuple& Area, const HTuple& CenterRow, const HTuple& CenterCol, const HTuple& P, const HTuple& Q, HTuple* M)
double HXLD::MomentsAnyPointsXld(const HTuple& Mode, const HTuple& Area, const HTuple& CenterRow, const HTuple& CenterCol, const HTuple& P, const HTuple& Q) const
HTuple HXLDArray::MomentsAnyPointsXld(const HTuple& Mode, const HTuple& Area, const HTuple& CenterRow, const HTuple& CenterCol, const HTuple& P, const HTuple& Q) const
void MomentsAnyPointsXld(const HObject& XLD, const HTuple& Mode, const HTuple& Area, const HTuple& CenterRow, const HTuple& CenterCol, const HTuple& P, const HTuple& Q, HTuple* M)
HTuple HXLD::MomentsAnyPointsXld(const HString& Mode, const HTuple& Area, const HTuple& CenterRow, const HTuple& CenterCol, const HTuple& P, const HTuple& Q) const
double HXLD::MomentsAnyPointsXld(const HString& Mode, double Area, double CenterRow, double CenterCol, Hlong P, Hlong Q) const
double HXLD::MomentsAnyPointsXld(const char* Mode, double Area, double CenterRow, double CenterCol, Hlong P, Hlong Q) const
void HOperatorSetX.MomentsAnyPointsXld(
[in] IHUntypedObjectX* XLD, [in] VARIANT Mode, [in] VARIANT Area, [in] VARIANT CenterRow, [in] VARIANT CenterCol, [in] VARIANT P, [in] VARIANT Q, [out] VARIANT* M)
VARIANT HXLDX.MomentsAnyPointsXld(
[in] BSTR Mode, [in] VARIANT Area, [in] VARIANT CenterRow, [in] VARIANT CenterCol, [in] VARIANT P, [in] VARIANT Q)
VARIANT HXLDContX.MomentsAnyPointsXld(
[in] BSTR Mode, [in] VARIANT Area, [in] VARIANT CenterRow, [in] VARIANT CenterCol, [in] VARIANT P, [in] VARIANT Q)
VARIANT HXLDPolyX.MomentsAnyPointsXld(
[in] BSTR Mode, [in] VARIANT Area, [in] VARIANT CenterRow, [in] VARIANT CenterCol, [in] VARIANT P, [in] VARIANT Q)
VARIANT HXLDParaX.MomentsAnyPointsXld(
[in] BSTR Mode, [in] VARIANT Area, [in] VARIANT CenterRow, [in] VARIANT CenterCol, [in] VARIANT P, [in] VARIANT Q)
VARIANT HXLDModParaX.MomentsAnyPointsXld(
[in] BSTR Mode, [in] VARIANT Area, [in] VARIANT CenterRow, [in] VARIANT CenterCol, [in] VARIANT P, [in] VARIANT Q)
VARIANT HXLDExtParaX.MomentsAnyPointsXld(
[in] BSTR Mode, [in] VARIANT Area, [in] VARIANT CenterRow, [in] VARIANT CenterCol, [in] VARIANT P, [in] VARIANT Q)
static void HOperatorSet.MomentsAnyPointsXld(HObject XLD, HTuple mode, HTuple area, HTuple centerRow, HTuple centerCol, HTuple p, HTuple q, out HTuple m)
HTuple HXLD.MomentsAnyPointsXld(string mode, HTuple area, HTuple centerRow, HTuple centerCol, HTuple p, HTuple q)
double HXLD.MomentsAnyPointsXld(string mode, double area, double centerRow, double centerCol, int p, int q)
moments_any_points_xldmoments_any_points_xldMomentsAnyPointsXldmoments_any_points_xldMomentsAnyPointsXldMomentsAnyPointsXld berechnet Momente beliebiger Ordnung
der durch Konturen oder Polygonen XLDXLDXLDXLDXLDXLD gegebenen Punktwolken
(d.h. die Reihenfolge der Kontur- oder Polygonpunkte wird nicht
berücksichtigt).
Abhängig vom Parameter ModeModeModeModeModemode werden die berechneten Momente
wie folgt normiert:
- 'unnormalized':
Keine Normalisierung.
- 'unnormalized_central':
Verschiebung der Konturpunkte um ihren
Schwerpunkt.
- 'normalized':
Normalisierung durch die Fläche A =
AreaAreaAreaAreaAreaarea von XLDXLDXLDXLDXLDXLD
- 'central':
Normalisierung durch die Fläche A = AreaAreaAreaAreaAreaarea
und zusätzlich Verschiebung der Bildregion um ihren Schwerpunkt.
Für die Normierung der Momente werden ggf. drei spezielle Werte
benötigt: Die Fläche AreaAreaAreaAreaAreaarea sowie die Koordinaten
CenterRowCenterRowCenterRowCenterRowCenterRowcenterRow,CenterRowCenterRowCenterRowCenterRowCenterRowcenterRow des Schwerpunktes (diese können
mittels area_center_points_xldarea_center_points_xldAreaCenterPointsXldarea_center_points_xldAreaCenterPointsXldAreaCenterPointsXld berechnet werden).
Bei geschlossenen Konturen oder Polygonen (Anfangspunkt = Endpunkt) wird
der Endpunkt der Kontur oder des Polygons nicht berücksichtigt, da er sonst
doppeltes Gewicht erhielte.
moments_any_points_xldmoments_any_points_xldMomentsAnyPointsXldmoments_any_points_xldMomentsAnyPointsXldMomentsAnyPointsXld sollte dann verwendet werden, wenn die Kontur
XLDXLDXLDXLDXLDXLD entweder nicht kreuzungsfrei ist oder nicht kreuzungsfrei durch
eine Line vom End- zum Anfangspunkt geschlossen werden kann. In diesem Fall
liefert moments_xldmoments_xldMomentsXldmoments_xldMomentsXldMomentsXld keine sinnvollen Ergebnisse. Ob sich die
Konturen oder Polygone selbst schneiden, kann leicht mit
test_self_intersection_xldtest_self_intersection_xldTestSelfIntersectionXldtest_self_intersection_xldTestSelfIntersectionXldTestSelfIntersectionXld überprüft werden.
Wird mehr als eine Kontur oder ein Polygon übergeben, dann werden
die Momente für die einzelnen Konturen bzw. Polygone hintereinander
in MMMMMm abgelegt.
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
Zu untersuchende Konturen bzw. Polygone.
Modus.
Defaultwert:
'unnormalized'
"unnormalized"
"unnormalized"
"unnormalized"
"unnormalized"
"unnormalized"
Wertevorschläge: 'unnormalized'"unnormalized""unnormalized""unnormalized""unnormalized""unnormalized", 'unnormalized_central'"unnormalized_central""unnormalized_central""unnormalized_central""unnormalized_central""unnormalized_central", 'normalized'"normalized""normalized""normalized""normalized""normalized", 'central'"central""central""central""central""central"
Zeilenindex des Schwerpunktes.
Spaltenindex des Schwerpunktes.
PPPPPp (input_control) point.x(-array) → HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)
Erster Index der zu berechnenden Momente
M[P,Q].
Defaultwert: 1
Wertevorschläge: 0, 1, 2, 3, 4
QQQQQq (input_control) point.x(-array) → HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)
Zweiter Index der zu berechnenden Momente
M[P,Q].
Defaultwert: 1
Wertevorschläge: 0, 1, 2, 3, 4
MMMMMm (output_control) real(-array) → HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)
Die berechneten Momente.
Sei n die Anzahl der Punkte in der Kontur bzw. dem
Polygon. Dann ist die Laufzeit O(n).
moments_any_points_xldmoments_any_points_xldMomentsAnyPointsXldmoments_any_points_xldMomentsAnyPointsXldMomentsAnyPointsXld liefert den Wert 2 (H_MSG_TRUE), falls die
Eingabe nicht leer ist. Das Verhalten bei leerer Eingabe 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.
area_center_points_xldarea_center_points_xldAreaCenterPointsXldarea_center_points_xldAreaCenterPointsXldAreaCenterPointsXld,
gen_contours_skeleton_xldgen_contours_skeleton_xldGenContoursSkeletonXldgen_contours_skeleton_xldGenContoursSkeletonXldGenContoursSkeletonXld,
smooth_contours_xldsmooth_contours_xldSmoothContoursXldsmooth_contours_xldSmoothContoursXldSmoothContoursXld,
gen_polygons_xldgen_polygons_xldGenPolygonsXldgen_polygons_xldGenPolygonsXldGenPolygonsXld
moments_points_xldmoments_points_xldMomentsPointsXldmoments_points_xldMomentsPointsXldMomentsPointsXld,
moments_any_xldmoments_any_xldMomentsAnyXldmoments_any_xldMomentsAnyXldMomentsAnyXld
moments_points_xldmoments_points_xldMomentsPointsXldmoments_points_xldMomentsPointsXldMomentsPointsXld,
area_center_points_xldarea_center_points_xldAreaCenterPointsXldarea_center_points_xldAreaCenterPointsXldAreaCenterPointsXld,
moments_region_2ndmoments_region_2ndMomentsRegion2ndmoments_region_2ndMomentsRegion2ndMomentsRegion2nd,
area_centerarea_centerAreaCenterarea_centerAreaCenterAreaCenter
Foundation