Salve a tutti, 2011/1/25 marco zanieri <marcozani...@gmail.com>
> comunque è vero che la soluzione migliore sarebbe quella del path relativo > al layer o forse meglio all'ubicazione del progetto.. > ho smanettato un pò con python (fare codice python non indentato è un problema), ed eccovi le soluzioni. Basterà usare i successivi pezzi di codice come azioni python modificando il valore della variabile command ("eog", Eye Of Gnome, è il mio visualizzatore di immagini) e della variabile imagerelpath con il campo da cui prendere il percorso. *Path relativo al layer selezionato *(funziona sia con layer vettoriali basati su file che quelli su db spatialite) command = "eog"; imagerelpath = "immagini/tav_01.jpg"; layer = qgis.utils.iface.activeLayer(); import os.path; layerpath = layer.source() if layer.providerType() == 'ogr' else (qgis.core.QgsDataSourceURI(layer.source()).database() if layer.providerType() == 'spatialite' else None); path = os.path.dirname(str(layerpath)); image = os.path.join(path, imagerelpath); import subprocess; subprocess.Popen( [command, image ] ); Se il layer non è di tipo ogr né spatialite restituisce un errore. *Path relativo al progetto *(relativo al percorso nel quale è stato salvato il progetto attualmente aperto) command = "eog"; imagerelpath = "immagini/tav_01.jpg"; projectpath = qgis.core.QgsProject.instance().fileName(); import os.path; path = os.path.dirname(str(projectpath)) if projectpath != '' else None; image = os.path.join(path, imagerelpath); import subprocess; subprocess.Popen( [command, image ] ); Se il progetto attuale non è salvato restituisce un errore. Spero possano esservi utili ;) Saluti. > Il giorno 25 gennaio 2011 15:43, Giuseppe Sucameli <sucam...@faunalia.it>ha > scritto: > > Salve a tutti, >> >> "percorso eseguibile apertura immagini" "%campo con il percorso >>> immagini" >>> >> ho appena provato ad eseguire su Ubuntu un'azione del tipo >> gedit text.txt >> ed ho avuto come risultato l'apertura in modifica del file ~/text.txt >> Per chi non conoscesse linux, ~ è la home dell'utente, quindi, almeno su >> linux il >> risultato è che il path da inserire deve essere relativo alla home >> dell'utente. >> >> Credo sia uguale anche su windows, quindi nel tuo caso (WinXP) dovrebbe >> essere: >> ../../butta/immagini/tav_01.jpg >> Non ne sono sicuro però, ci sarebbe da provare. >> >> La migliore soluzione di certo sarebbe poter usare un path relativo al >> layer. >> >> Saluti. >> >> 2011/1/25 Giovanni Manghi <giovanni.man...@gmail.com> >> >> -- Giovanni -- >>> >>> >>> _______________________________________________ >>> Iscriviti all'associazione GFOSS.it: >>> http://www.gfoss.it/drupal/iscrizione >>> Gfoss@lists.gfoss.it >>> http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss >>> Questa e' una lista di discussione pubblica aperta a tutti. >>> Non inviate messaggi commerciali. >>> I messaggi di questa lista non rispecchiano necessariamente >>> le posizioni dell'Associazione GFOSS.it. >>> 496 iscritti al 24.1.2011 >> >> >> >> >> -- >> Giuseppe Sucameli >> >> > > > -- > dott. Marco Zanieri > e-mail: marcozani...@gmail.com > > cartografia tematica > banche dati territoriali > sistemi informativi geografici > applicazioni GIS e webGIS > > > > > -- Giuseppe Sucameli
_______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione Gfoss@lists.gfoss.it http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. Non inviate messaggi commerciali. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 496 iscritti al 24.1.2011