Ich muss Polygone (Ebene 'pol') durch geschlossene und nicht geschlossene Linestrings (Ebene 'lin') teilen.
Leider erhalte ich bei der folgenden Abfrage keine korrekten Ergebnisse.
CREATE VIEW splitted_pol AS
SELECT
g.path[1] as gid,
g.geom::geometry(polygon, SRID) as geom
FROM
(SELECT
(ST_Dump(ST_Split(pol.geom, lin.geom))).*
FROM pol, lin
) as g;
In meinem Beispiel sollte ST_Split sechs Polygone erstellen (Ebene 'splitted_pol').
Weiß jemand, wie man ST_Split mit QGIS / PostGIS verwendet?
qgis
postgis
postgresql
splitting
Mondsee
quelle
quelle
ST_Split
.Antworten:
Sie könnten eine Funktion wie die folgende erstellen:
Dann benutze es wie folgt:
Dies ergibt die sechs Datensätze, die Sie erwarten. Möglicherweise möchten Sie eine Fehlerprüfung / -behandlung hinzufügen, und ich bin mir über die Skalierbarkeit nicht sicher.
quelle
Ich verwende postGIS sql, um Features in JAVA zeilenweise aufzuteilen, und mein Code hat funktioniert. Mein Code ist:
öffentliche Liste splitGeometry (String geom1, String geom2) {
Ich hoffe dir zu helfen.
quelle