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

GEODATA DAYS 2024

#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

MathieuR
Membre
Lieu: aix-en-provence
Date d'inscription: 16 Feb 2009
Messages: 1690
Site web

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

 

Pied de page des forums

Powered by FluxBB