#1 Wed 24 April 2013 17:54
- jleplus9
- Participant occasionnel
- Date d'inscription: 5 Feb 2013
- Messages: 11
QGIS 1.8 / Grass : automatisation commande grass
Bonjour à tous,
Ce forum m'a déjà beaucoup pour mon travail mais cette fois je n'ai pas trouvé la réponse, laissez moi vous expliquer:
J'ai environ 300 dalles au format .asc et j'aimerai les changer au format .xyz en automatisant la procédure.
sous grass, les commandes que j'ai rentré sont les suivantes ,
pour importer une dalle:
Code:
r.in.gdal "input=C:\Users\user21\Desktop\03-MNT_grille1m\10450_Meuse_grille1m_CC48-IGN69_000001.asc" output=10450_Meuse_grille1m_CC48-IGN69_000001_GRASS.asc -o
pour recentrer la région :
Code:
g.region rast=10450_Meuse_grille1m_CC48-IGN69_000001_GRASS.asc@HEBMA
pour faire l'export au format xyz:
Code:
r.out.xyz input=10450_Meuse_grille1m_CC48-IGN69_000001_GRASS.asc@HEBMA "fs=;" output=C:/Users/user21/Desktop/xyz/10450_Meuse_grille1m_CC48-IGN69_000001.xyz
du coup j'ai fait un très joli tableau excel avec 300 la ligne de commande "r.in.gdal" en changeant évidemment le nom de mes couches raster.
en utilisant la fenetre Shell de grass (sous qgis lisboa) je copie colle les 300 lignes de commande.
résultat: mes 300 raster sont importés dans grass comme prévu et d'un seul coup.
du coup pour la suite, sur un autre colonne excel j'alterne les commande s
g.region
r.out.xyz
g.region
r.out.xyz
...
je me retrouve donc avec une colonne avec 600 ligne de commande.
comme précédemment, je copie-colle cette colonne dans le shell de grass à travers Qgis
résultat: seul les 2 première lignes de commande sont éxecutées -> g.region et r.out.xyz.
après ça s’arrête sans aucune raison.
Est-ce que vous savez pourquoi?
Avez vous une idée pour arrangé se léger problème et m'éviter de répéter une manip 300 fois?
ps:
J'ai essayé l'export au format .asc avec la commande
Code:
r.out.ascii input=10450_Meuse_grille1m_CC48-IGN69_000001_GRASS.asc@HEBMA dp=6 null=0 output=C:/Users/user21/Desktop/xyz/TEST.asc
et la tout les export se font de manière automatique en un seul copier collé.
Hors ligne
#2 Thu 25 April 2013 07:53
Re: QGIS 1.8 / Grass : automatisation commande grass
en réalisant une boucle programmée en bash, ce sera possible d'éviter la répétition des commandes.
personnellement, j'enregistrerais toutes ces commandes dans un fichier shell (langage bash) ou bien batch (langage dos) si vous êtes sous windows.
par ex, sous windows, on peut "ponctuer" chaque commande par une commande de type pause, de sorte qu'une fois la commande exécutée, la fenêtre ne se ferme pas inopinément sans que l'on voie le message.
Dans votre cas, il s'agirait justement de voir où se situe le problème.
Si les deux premières lignes sont exécutées, cela veut dire que c'est au niveau de de r.out.xyz que ça coince?
Aussi, étant donné que vous importez en masse des fichiers, je vous conseillerais de supprimer les données de la bdd grass une fois qu'elles ont été exportées.
geodata au cerema et petits billets en géomatique
Hors ligne