J'ai besoin de diviser les polygones (couche 'pol') en chaînes fermées et non fermées (couche 'lin').
Malheureusement, je n'obtiens pas de résultats corrects en exécutant la requête suivante.
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;
Dans mon exemple, ST_Split devrait créer six polygones (couche 'splitted_pol').
Quelqu'un sait-il comment utiliser ST_Split avec QGIS / PostGIS?
qgis
postgis
postgresql
splitting
Mer lunaire
la source
la source
ST_Split
.Réponses:
Vous pouvez créer une fonction comme ceci:
Ensuite, utilisez-le comme:
Cela donne les six enregistrements que vous attendez. Vous voudrez peut-être ajouter une vérification / gestion des erreurs et je ne suis pas sûr de l'évolutivité.
la source
J'utilise sql postGIS pour diviser la fonctionnalité par ligne dans JAVA, et mon code a fonctionné. mon code est:
public list splitGeometry (String geom1, String geom2) {
J'espère vous aider.
la source