test_self_intersection_xld
— Test auf Selbstüberschneidungen von XLD-Konturen oder -Polygonen.
test_self_intersection_xld(XLD : : CloseXLD : DoesIntersect)
test_self_intersection_xld
überprüft, ob sich die
Eingabekonturen oder -polygone in XLD
selbst schneiden.
Das Ausgabearray DoesIntersect
enthält eine 1,
falls die zugehörige Kontur oder das zugehörige Polygon die eine
Selbstüberschneidung besitzt und eine 0 sonst.
Hat der Eingabeparameter CloseXLD
den Wert 'true' ,
so werden offene Konturen oder Polygone zunächst geschlossen, indem
der erste und der letzte Kontur- oder Polygonpunkt durch ein
Liniensegment verbunden werden.
Wenn sich eine Kontur oder ein Polygon lediglich selbst berührt, so wird dies nicht als Selbstüberschneidung gewertet.
Eine Kontur oder ein Polygon berührt sich dann selbst, wenn ein Kontur- oder Polygonpunkt exakt auf einem Kontur- oder Polygonstück liegt. Ob ein Punkt aber genau auf einem Kontur- oder Polygonstück liegt oder nicht, lässt sich aus numerischen Gründen praktisch nicht entscheiden.
XLD
(input_object) xld(-array) →
object
Eingabekonturen bzw. -polygone.
CloseXLD
(input_control) string →
(string)
Sollen die Eingabekonturen oder -polygone zuerst geschlossen werden?
Defaultwert: 'true'
Werteliste: 'false' , 'true'
DoesIntersect
(output_control) number(-array) →
(integer)
1 für Konturen oder Polygone mit Selbstüberschneidung und 0 sonst.
Foundation