Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Printemps des cartes 2024

#1 Sun 09 April 2017 13:41

Theos2000
Participant assidu
Date d'inscription: 15 Jun 2015
Messages: 221

Regrouper polygones/Parcelle en plusieurs entités

Bonjour,

Je suis devant une problématique qui m'a occupé pas mal d'heures ces derniers temps sans arriver a trouver de solutions viables.
Je travaille actuellement  PLUi divisé en plusieurs zonages (une couche) qui eux mèmes regroupent des parcelles (couche aussi).

Ces zonages doivent être modifié en fonction du passage d'une couche trame verte et bleu qui les intersectent.

Après avoir découpé le zonage existant par la couche parcelle et modifié les attributs de zonage a la parcelle (Jusque la c'est bon...), j'aurais souhaité regroupé les parcelles de mème zonages, mais que celles étant mitoyenne les unes des autres.

J'ai bien essayé d'utiliser les commandes st_union couplé avec un st_intersecte sans succès, j'ai pas mal de doublons. En cherchant sur georezo j'ai trouvé des problématiques s'approchant (sujet sur les batiments mitoyens) mais les solutions proposés n'ont pas donné les résultats escomptés sur mon cas.

PS (Sujet administration annexe) : Suite à la sauvegarde ma base, celle ci pèse 10 *  plus que la base lambda alors que je n'ai importé qu'une couche de parcelles et réalisé des intersections.
Le Vaccum n'a pas l'air de fonctionner, existe il une autre commande pour supprimer des lignes temporaires ?

Merci d'avance pour vos idées & pour vos infos.

Hors ligne

 

#2 Sun 09 April 2017 15:07

dbaston
Juste Inscrit !
Lieu: Montpelier
Date d'inscription: 3 Jun 2016
Messages: 7
Site web

Re: Regrouper polygones/Parcelle en plusieurs entités

Bonjour,

Si vous avez déjà affecté une valeur de zonage à chaque parcelle, vous pouvez les regrouper en utilisant ST_ClusterIntersecting:

Code:

SELECT unnest(ST_ClusterIntersecting(geom)) AS geom
FROM parcelles
GROUP BY zonage

Daniel

Hors ligne

 

#3 Mon 10 April 2017 09:16

ChristopheV
Membre
Lieu: Ajaccio
Date d'inscription: 7 Sep 2005
Messages: 3168
Site web

Re: Regrouper polygones/Parcelle en plusieurs entités

Bonjour,

Effectivement avec cette fonction ... A une remarque près : st_clusterintersecting attend un "geometry set" et non une géométrie, vous devez donc agréger les géométries des parcelles, avec st_accum() par exemple.

Une autre solution c'est d'utiliser la topologie.


Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close

Hors ligne

 

#4 Mon 10 April 2017 10:34

ppluvinet
Participant assidu
Lieu: LYON
Date d'inscription: 6 Aug 2007
Messages: 608

Re: Regrouper polygones/Parcelle en plusieurs entités

Bonjour,
Je ne connais pas bien ces fonctions de regroupement telles que st_clusterIntersecting.
Quelle est la différence avec :

Code:

SELECT (st_dump(st_union(geom))).geom AS geom
FROM parcelles
GROUP BY zonage

Merci d'avance,


Pascal PLUVINET

Hors ligne

 

#5 Mon 10 April 2017 11:02

tumasgiu
Membre
Lieu: Ajaccio
Date d'inscription: 5 Jul 2010
Messages: 1132

Re: Regrouper polygones/Parcelle en plusieurs entités

@ppluvinet

Je pense que le résultat doit être similaire,
seulement clusterIntersecting ne modifie pas les géométries,
elle ne fait que les agréger dans des tableaux.
Les polygones ne se "dissolvent" donc pas.

Vous épargnez également à la machine des calculs d'union de géométrie
potentiellement longs et gourmand en mémoire.

Dernière modification par tumasgiu (Mon 10 April 2017 11:03)

Hors ligne

 

#6 Mon 10 April 2017 11:21

ppluvinet
Participant assidu
Lieu: LYON
Date d'inscription: 6 Aug 2007
Messages: 608

Re: Regrouper polygones/Parcelle en plusieurs entités

Ok merci ! Je crois mieux comprendre. Ca semble effectivement bien intéressant. Et ca marche aussi bien pour du polygone que pour des lignes , à ce que j'ai pu entrevoir ?


Pascal PLUVINET

Hors ligne

 

#7 Mon 10 April 2017 13:28

ChristopheV
Membre
Lieu: Ajaccio
Date d'inscription: 7 Sep 2005
Messages: 3168
Site web

Re: Regrouper polygones/Parcelle en plusieurs entités

Bonjour,

Pascal, vas voir là : https://georezo.net/forum/viewtopic.php?id=102129

L'avantage de ces fonctions est de permettre la constitution de grappes et de connaître le nombre d'éléments dans une grappe.
Dans l'exemple cité je créé une grappe de bâtiments qui se touchent et j'utilise ensuite st_union() pour créé un polygone à partir de la grappe.


Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close

Hors ligne

 

#8 Mon 10 April 2017 20:10

Theos2000
Participant assidu
Date d'inscription: 15 Jun 2015
Messages: 221

Re: Regrouper polygones/Parcelle en plusieurs entités

Merci pour toutes ces informations, je vais voir de mon coté comment s'effectue le traitement.

Hors ligne

 

Pied de page des forums

Powered by FluxBB