Message posté par : zack
----------------------------------------
Bonjour,
Dans une chaîne de traitement QGIS j'essaye de découper des polygones par des lignes.
Ces lignes sont issus de st_shortestline sur postgis. J'ai étendue chaque ligne de 1m
pour éviter des problèmes de précision.
L'outil "couper avec des lignes" de QGIS fonctionne sur une petite zone de
test, mais pas sur une commune entière, beaucoup trop de lignes et de polygones (quelques
milliers pour chaque).
Du coup j'essaye de voir pour intégrer la fonction st_split. Elle semble marcher en
une demi-heure pour la commune entière. Mais le résultat n'est pas du tout bon,
j'ai des dizaines de milliers de lignes dans la table, et pourtant en les chargeant
dans QGIS mes polygones semblent non découpés.
Je pense que ça vient du fait que st_split crée une geometry_collection et que le
ST_CollectionExtract ne marche justement pas dans le cas d'un st_split.
Du coup est-ce que quelqu'un sait quelle fonction écrire ? Je ne suis pas hyper à
l'aise avec PostGIS
La fonction suivante ne marche pas donc, il me donne une erreur à cause du multilinestring
qui n'est pas supporté...
-----------------
Code :
DROP TABLE if exists blabla;
CREATE TABLE blabla AS
SELECT ST_CollectionExtract(ST_Split(rect.geom, line.the_geom),3)
FROM public.polygones_zone_test as rect, public.lignes_zone_test as line
-----------------
Merci à vous !
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=320987#p320987
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net