dist_rectangle2_contour_points_xldT_dist_rectangle2_contour_points_xldDistRectangle2ContourPointsXldDistRectangle2ContourPointsXld (Operator)
Name
dist_rectangle2_contour_points_xldT_dist_rectangle2_contour_points_xldDistRectangle2ContourPointsXldDistRectangle2ContourPointsXld
— Berechnen der Abstände von allen Punkten einer Kontur zu einem
Rechteck.
Signatur
void DistRectangle2ContourPointsXld(const HObject& Contour, const HTuple& ClippingEndPoints, const HTuple& Row, const HTuple& Column, const HTuple& Phi, const HTuple& Length1, const HTuple& Length2, HTuple* Distances)
HTuple HXLDCont::DistRectangle2ContourPointsXld(Hlong ClippingEndPoints, double Row, double Column, double Phi, double Length1, double Length2) const
static void HOperatorSet.DistRectangle2ContourPointsXld(HObject contour, HTuple clippingEndPoints, HTuple row, HTuple column, HTuple phi, HTuple length1, HTuple length2, out HTuple distances)
HTuple HXLDCont.DistRectangle2ContourPointsXld(int clippingEndPoints, double row, double column, double phi, double length1, double length2)
Beschreibung
dist_rectangle2_contour_points_xlddist_rectangle2_contour_points_xldDistRectangle2ContourPointsXldDistRectangle2ContourPointsXldDistRectangle2ContourPointsXld
bestimmt die euklidischen
Abstände zwischen den Punkten einer Kontur ContourContourContourContourcontour
und
einem Rechteck beliebiger Orientierung, das durch den Mittelpunkt
(RowRowRowRowrow
, ColumnColumnColumnColumncolumn
), die Orientierung PhiPhiPhiPhiphi
und
halben Kantenlängen Length1Length1Length1Length1length1
und Length2Length2Length2Length2length2
definiert
ist. Der Winkel PhiPhiPhiPhiphi
wird im Bogenmaß spezifiziert und gibt
den Winkel der horizontalen Achse und der Kante mit der halben Länge
Length1Length1Length1Length1length1
im mathematisch positiven Sinn (gegen den
Uhrzeigersinn) an.
Je nach Vorverarbeitung lassen sich die Start- und Endpunkte einer
Kontur nicht exakt bestimmen. Dann wird der Operator
fit_rectangle2_contour_xldfit_rectangle2_contour_xldFitRectangle2ContourXldFitRectangle2ContourXldFitRectangle2ContourXld
typischerweise mit einem Wert
größer null für den Parameter ClippingEndPointsClippingEndPointsClippingEndPointsClippingEndPointsclippingEndPoints
aufgerufen,
um eine bestimmte Anzahl an Punkten an beiden Enden der Kontur für
die Berechnung auszuschließen. Damit der Abstand für dieselben
Konturpunkte wie in der Rechtecksanpassung berechnet werden kann,
ist für den Parameter ClippingEndPointsClippingEndPointsClippingEndPointsClippingEndPointsclippingEndPoints
derselbe Wert wie
bei fit_rectangle2_contour_xldfit_rectangle2_contour_xldFitRectangle2ContourXldFitRectangle2ContourXldFitRectangle2ContourXld
zu wählen.
Ausführungsinformationen
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
Parameter
ContourContourContourContourcontour
(input_object) xld_cont →
objectHXLDContHXLDContHobject
Eingabekontur.
ClippingEndPointsClippingEndPointsClippingEndPointsClippingEndPointsclippingEndPoints
(input_control) integer →
HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Anzahl der Konturpunkte am Anfang und Ende der
Kontur, die für die Abstandsberechnung ignoriert werden
sollen.
Defaultwert: 0
Wertevorschläge: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
Restriktion: ClippingEndPoints >= 0
RowRowRowRowrow
(input_control) rectangle2.center.y →
HTupleHTupleHtuple (real) (double) (double) (double)
Zeilenkoordinate des Mittelpunktes des Rechtecks.
ColumnColumnColumnColumncolumn
(input_control) rectangle2.center.x →
HTupleHTupleHtuple (real) (double) (double) (double)
Spaltenkoordinate des Mittelpunktes des Rechtecks.
PhiPhiPhiPhiphi
(input_control) rectangle2.angle.rad →
HTupleHTupleHtuple (real) (double) (double) (double)
Orientierung der Hauptachse des Rechtecks in Bogenmaß.
Length1Length1Length1Length1length1
(input_control) rectangle2.hwidth →
HTupleHTupleHtuple (real) (double) (double) (double)
Erster Halbmesser (halbe Länge) des Rechtecks.
Restriktion: Length1 > 0
Length2Length2Length2Length2length2
(input_control) rectangle2.hheight →
HTupleHTupleHtuple (real) (double) (double) (double)
Zweiter Halbmesser (halbe Breite) des Rechtecks.
Restriktion: Length2 >= 0
DistancesDistancesDistancesDistancesdistances
(output_control) real-array →
HTupleHTupleHtuple (real) (double) (double) (double)
Abstände der Konturpunkte zum Rechteck.
Ergebnis
Sind die Parameterwerte korrekt, dann liefert
dist_rectangle2_contour_points_xlddist_rectangle2_contour_points_xldDistRectangle2ContourPointsXldDistRectangle2ContourPointsXldDistRectangle2ContourPointsXld
den Wert 2 (H_MSG_TRUE).
Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
Vorgänger
fit_rectangle2_contour_xldfit_rectangle2_contour_xldFitRectangle2ContourXldFitRectangle2ContourXldFitRectangle2ContourXld
Modul
Foundation