ST_Node — Knoten eine Sammlung von Linien.
geometry ST_Node(
geometry geom)
;
Gibt einen (Multi)LineString zurück, der die vollständig nodierte Version einer Sammlung von Linestrings darstellt. Bei der Kodierung bleiben alle Eingabeknoten erhalten, und es werden so wenig neue Knoten wie möglich hinzugefügt. Das resultierende Linienwerk wird aufgelöst (doppelte Linien werden entfernt).
Dies ist ein guter Weg, um ein vollständig codiertes Linienwerk zu erstellen, das als Input für ST_Polygonize verwendet werden kann.
ST_UnaryUnion kann auch zum Verknüpfen und Auflösen von Linien verwendet werden. Es bietet die Möglichkeit, eine gridSize anzugeben, die eine einfachere und robustere Ausgabe ermöglichen kann. Siehe auch ST_Union für eine aggregierte Variante.
Diese Funktion unterstützt 3d und lässt den Z-Index nicht fallen.
Wird vom GEOS Modul ausgeführt
Verfügbarkeit: 2.0.0
Geändert: 2.4.0 verwendet diese Funktion intern GEOSNode anstelle von GEOSUnaryUnion. Dies kann dazu führen, dass die resultierenden Linestrings eine andere Reihenfolge und Richtung haben als in PostGIS < 2.4.
Kodierung eines 3D-LineStrings, der sich selbst schneidet
SELECT ST_AsText( ST_Node('LINESTRINGZ(0 0 0, 10 10 10, 0 10 5, 10 0 3)'::geometry) ) As output; output ----------- MULTILINESTRING Z ((0 0 0,5 5 4.5),(5 5 4.5,10 10 10,0 10 5,5 5 4.5),(5 5 4.5,10 0 3))
Kodierung zweier LineStrings, die ein gemeinsames Liniengerüst haben. Beachten Sie, dass das Liniengerüst des Ergebnisses aufgelöst wird.
SELECT ST_AsText( ST_Node('MULTILINESTRING ((2 5, 2 1, 7 1), (6 1, 4 1, 2 3, 2 5))'::geometry) ) As output; output ----------- MULTILINESTRING((2 5,2 3),(2 3,2 1,4 1),(4 1,2 3),(4 1,6 1),(6 1,7 1))