#1 Thu 18 February 2010 11:09
- Paul
- Participant assidu
- Lieu: Paris
- Date d'inscription: 31 Jul 2008
- Messages: 158
[GRASS] Import de shape
Bonjour ami(e)s géomaticien(ne)s !
J'ai un gros problème avec l'import de shape surfaciques dans Grass. Lors d'un précédent sujet sur ce thème, on m'avait répondu que le shape est "spaghetti" et que Grass n'aime pas trop les spaghettis.
Pour info j'interface Grass par QGIS sous XP.
En important mon shape j'ai plusieurs problèmes :
- Pour la couche "mon_shape", il me créé 3 sous couches : Polygon_0, Polygon_1, Polygon_2. Or seul le Polygon 1 semble être ce que je souhaite. 1ère question, comment effacer les 2 sous couches qui ne m'intéressent pas ?
- Mais principal souci, Grass me dédouble des lignes (donc des entités je suppose). J'ai l'impression qu'il créé des micro polygones qui gardent les caractéristiques d'un autre polygone. Comment obtenir une couche vecteur propre ???
Si une solution a déjà été présentée, je vous présente mes excuses d'avance d'avoir pollué le forum d'un sujet redondant.
Bonne journée !
Paul
Paul
Hors ligne
#2 Thu 18 February 2010 11:59
Re: [GRASS] Import de shape
Bonjour Paul,
Tu as bien saisis le problème. Quand un shape contient deux polygones qui se superposent (même très peu), GRASS va créer trois objets : les deux polygones chacun coupé par la partie qui se superpose. La 3e est la surface commune.
Je ne me souviens plus des détails mais les trois couches Polygon_0, Polygon_1, Polygon_2 correspondent aux couches créées en fonctions des erreurs, par exemple :
v.in.ogr writes the number of overlapping input areas as category of field 2,
usually errors in input data.
Je suppose que c'est pareil pour le champ 1.
Donc pour avoir une couche propre, il faut :
1. avoir un shape propre (pas de superposition de polygone)
2. utiliser v.clean après l'import et jouer sur ses paramètres
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#3 Thu 18 February 2010 14:34
- yopyop25
- Participant actif
- Lieu: besançon
- Date d'inscription: 2 Jun 2008
- Messages: 144
Re: [GRASS] Import de shape
Bonjour,
De mémoire, et on me corrigera si erreur, GRASS importe la géométrie sans corrections dans le layer_1 (on a donc des polygones se superposant), dans le layer_0 il créé les polygones correspondant aux chevauchements et dans le layer_2, il créé les polygones remplissant les vides. Je ne suis pas certains de l'ordre des layer mais l'idée est là.
Ceci permet de mettre en évidence les erreurs de topologie d'un shape mal dessiné.
Cordialement
Yohan
Hors ligne
#4 Thu 18 February 2010 14:59
- Paul
- Participant assidu
- Lieu: Paris
- Date d'inscription: 31 Jul 2008
- Messages: 158
Re: [GRASS] Import de shape
Merci Yves pour ces explications.
Cependant le v.clean n'a pas l'air d'être satisfaisant dans mon cas.
J'ai testé la méthode (un peu tordue ?) suivante qui semble fonctionner, peux-tu me donner ton avis ?
- Import de mon shp dans grass, j'obtiens mon "vecteur_grass_crado"
- Sauvegarde de mon "vecteur_grass_grado" en shp par la fonction "sauvegarder en shapefile" de QGIS, j'obtiens un "shp_crado"
- Dans la table de mon "shp_crado", j'ajoute une colonne superficie que je calcule
- Je sélectionne les polygones présentant une superficie inférieure à un certain seuil (0.001 m2 dans mon cas). En effet les polygon d'overlap ont l'air d'être tous extrêmement petits.
- Je supprime ces polygones, j'obtiens un "shp_propre"
- Enfin j'importe mon "shp_propre" dans Grass et j'obtiens un "vecteur_grass_propre"
Du moins il a visuellement l'air propre, est-ce que selon toi il l'est vraiment ???
Bon après midi !
Paul
Paul
Hors ligne
#5 Thu 18 February 2010 15:03
Re: [GRASS] Import de shape
Bonjour,
v.clean n'est pas censé supprimer les polygones dont la superficie est inférieur à un certain seuil ?
[edit] l'option rmarea : remove small areas, the longest boundary with adjacent area is removed
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#6 Thu 18 February 2010 15:32
- Paul
- Participant assidu
- Lieu: Paris
- Date d'inscription: 31 Jul 2008
- Messages: 158
Re: [GRASS] Import de shape
Mais si tu as raison, c'est moi, je dois avoir de la farine dans les yeux !
C'est en effet beaucoup moins tordu que ce que j'ai proposé.
Merci beaucoup Yves !
Bonne fin de journée
Paul
Hors ligne