| Operatoren |
gen_parallels_xld — Suchen nach parallelen XLD-Polygonen.
Mit gen_parallels_xld werden die in Polygons übergebenen Polygone auf Parallelität hin untersucht. Die resultierenden parallelen Teilstücke der Polygone werden unter Parallels ausgegeben. Falls der Parameter Merge auf 'true' gestetzt wird, werden nebeneinanderliegende parallele Teilstücke in einer einzigen Relation gespeichert. Ansonsten wird für jedes Paar von parallelen Liniensegmenten eine separate Parallelenrelation ausgegeben.
Es werden nur Polygonsegmente mit einer Länge von mindestens Len berücksichtigt. Ob zwei Polygonsegmente als parallel angesehen werden, hängt vor allem von der maximalen Winkeltoleranz Alpha (Bogenmaß) ab. Ferner müssen sich die Projektionen der beiden Segmente auf ihre Winkelhalbierende überlappen. Der Überlappungsbereich auf der Winkelhalbierenden wird zurück auf die Segmente projiziert. Ist der maximale Abstand der Rückprojektionen kleiner als Dist, werden die Segmente in Parallels gespeichert.
Als Nebeneffekt wird zu jedem parallelen Linienpaar ein sog. Qualitätsfaktor berechnet, siehe mod_parallels_xld. Dieser ergibt sich aus der normierten Winkeldifferenz und der normierten Überlappungsstrecke:
PI/2-delta_alpha 2*overlap
q = ---------------- * --------- mit (0 <= q <= 1)
PI/2 len1+len2
Dabei ist delta_alpha die Winkeldifferenz der Polygonsegmente, overlap der Überlappungsbereich, len1 und len2 die Länge der Polygonsegmente und q der errechnete Qualitätsfaktor. Dieser Wert stellt ein Maß für die Parallelität dar (je größer dieser Wert, desto „paralleler“ die Linien). Anschließend werden die Qualitäts-Faktoren aller parallelen Linien in gemeinsamen Polygonen, gewichtet nach ihrem Anteil an der gemeinsamen Überlappung, aufsummiert. Die Spanne für den errechneten Qualitätsfaktor kann mit info_parallels_xld abgerufen werden.
Eingabepolygone.
Parallelenrelationen.
Mindestlänge der einzelnen Polygonlinien.
Defaultwert: 10.0
Wertevorschläge: 5.0, 10.0, 15.0, 20.0
Restriktion: Len > 0.0
Maximalabstand der einzelnen Polygonlinien.
Defaultwert: 30.0
Wertevorschläge: 20.0, 25.0, 30.0, 40.0, 50.0, 75.0
Restriktion: Dist > 0.0
Maximale Winkeltoleranz der einzelnen Polygonlinien.
Defaultwert: 0.15
Wertevorschläge: 0.05, 0.10, 0.15, 0.20, 0.30
Restriktion: 0 <= Alpha && Alpha <= pi / 2
Sollen nebeneinanderliegende Parallelenrelationen zusammengefügt werden?
Defaultwert: 'true'
Werteliste: 'false', 'true'
mod_parallels_xld, get_parallels_xld, info_parallels_xld
Foundation
| Operatoren |