intersection_contours_xldintersection_contours_xldIntersectionContoursXldIntersectionContoursXld (Operator)
Name
intersection_contours_xldintersection_contours_xldIntersectionContoursXldIntersectionContoursXld — Berechnet die Schnittpunkte von zwei XLD-Konturen
Signatur
Herror intersection_contours_xld(const Hobject Contour1, const Hobject Contour2, const char* IntersectionType, double* Row, double* Column, Hlong* IsOverlapping)
Herror T_intersection_contours_xld(const Hobject Contour1, const Hobject Contour2, const Htuple IntersectionType, Htuple* Row, Htuple* Column, Htuple* IsOverlapping)
Beschreibung
intersection_contours_xldintersection_contours_xldIntersectionContoursXldIntersectionContoursXldIntersectionContoursXld berechnet die Schnittpunkte
der XLD-Konturen Contour1Contour1Contour1Contour1contour1 und Contour2Contour2Contour2Contour2contour2, die, falls
vorhanden, in (RowRowRowRowrow,ColumnColumnColumnColumncolumn) zurückgegeben werden.
Der Parameter IntersectionTypeIntersectionTypeIntersectionTypeIntersectionTypeintersectionType beschreibt die Art der
Schnittpunkte, die in (RowRowRowRowrow,ColumnColumnColumnColumncolumn) ausgegeben werden
sollen.
Für IntersectionTypeIntersectionTypeIntersectionTypeIntersectionTypeintersectionType = 'self'"self""self""self""self"
werden nur die Selbstüberschneidungen innerhalb der Konturen
ausgegeben, d.h. die Schnittpunkte innerhalb der Contour1Contour1Contour1Contour1contour1 und
innerhalb der Contour2Contour2Contour2Contour2contour2.
Für IntersectionTypeIntersectionTypeIntersectionTypeIntersectionTypeintersectionType = 'mutual'"mutual""mutual""mutual""mutual" werden
nur die Schnittpunkte berücksichtigt, die zwischen Contour1Contour1Contour1Contour1contour1 und
Contour2Contour2Contour2Contour2contour2 bestehen.
Im Standardfall gilt IntersectionTypeIntersectionTypeIntersectionTypeIntersectionTypeintersectionType = 'all'"all""all""all""all".
Hier werden sowohl die Selbstüberschneidungen als auch die gegenseitigen
Überschneidungen als Schnittpunkte gewertet.
Liegen Teile der XLD-Konturabschnitte übereinander,
liefert der Parameter IsOverlappingIsOverlappingIsOverlappingIsOverlappingisOverlapping
den Wert 1, ansonsten wird der Wert 0 zurückgegeben.
IsOverlappingIsOverlappingIsOverlappingIsOverlappingisOverlapping berücksichtigt sowohl Selbstüberlappungen als
auch gegenseitige Überlappungen, unabhängig von IntersectionTypeIntersectionTypeIntersectionTypeIntersectionTypeintersectionType.
Im Fall einer gegenseitigen Überlappung werden die Endpunkte des
gemeinsamen Geradenabschnitts als
Schnittpunkte in (RowRowRowRowrow,ColumnColumnColumnColumncolumn) zurückgegeben.
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
Contour1Contour1Contour1Contour1contour1 (input_object) xld_cont → objectHXLDContHXLDContHobject
Erste XLD-Kontur.
Contour2Contour2Contour2Contour2contour2 (input_object) xld_cont → objectHXLDContHXLDContHobject
Zweite XLD-Kontur.
IntersectionTypeIntersectionTypeIntersectionTypeIntersectionTypeintersectionType (input_control) string → HTupleHTupleHtuple (string) (string) (HString) (char*)
Schnittpunkte, die zurückgegeben werden sollen.
Defaultwert:
'all'
"all"
"all"
"all"
"all"
Werteliste: 'all'"all""all""all""all", 'mutual'"mutual""mutual""mutual""mutual", 'self'"self""self""self""self"
RowRowRowRowrow (output_control) point.y(-array) → HTupleHTupleHtuple (real) (double) (double) (double)
Zeilenkoordinate der Schnittpunkte.
ColumnColumnColumnColumncolumn (output_control) point.x(-array) → HTupleHTupleHtuple (real) (double) (double) (double)
Spaltenkoordinate der Schnittpunkte.
IsOverlappingIsOverlappingIsOverlappingIsOverlappingisOverlapping (output_control) integer → HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Liegen Teile der XLD-Konturabschnitte übereinander?
Ergebnis
Sind die Parameterwerte korrekt, dann liefert
intersection_contours_xldintersection_contours_xldIntersectionContoursXldIntersectionContoursXldIntersectionContoursXld den Wert 2 (H_MSG_TRUE).
Alternativen
intersection_segmentsintersection_segmentsIntersectionSegmentsIntersectionSegmentsIntersectionSegments,
intersection_segment_contour_xldintersection_segment_contour_xldIntersectionSegmentContourXldIntersectionSegmentContourXldIntersectionSegmentContourXld
Siehe auch
intersection_segment_lineintersection_segment_lineIntersectionSegmentLineIntersectionSegmentLineIntersectionSegmentLine,
intersection_linesintersection_linesIntersectionLinesIntersectionLinesIntersectionLines,
intersection_line_contour_xldintersection_line_contour_xldIntersectionLineContourXldIntersectionLineContourXldIntersectionLineContourXld
Modul
Foundation