[Gfoss] help su pyqgis

Salvatore Larosa lrssvtml a gmail.com
Mar 21 Ott 2014 18:59:12 CEST


Ciao Giuliano,

2014-10-21 18:17 GMT+02:00 giulianc51 <giulianc51 a gmail.com>:
> ciao a tutti,
>
>
> stavo analizzando e provando le istruzioni del dev cookbook, in
> particolare la gestione dei layer vettoriali ed il canvas; ho questi
> 2 problemi (in un programma standalone che usa pyqgis):
>
> 1) validità layer: quando carico un layer, eseguendo le istruzioni
> indicate quì:
>         http://docs.qgis.org/testing/en/docs/pyqgis_developer_cookbook/loadlayer.html
> e quì:
>         http://docs.qgis.org/testing/en/docs/pyqgis_developer_cookbook/canvas.html
> ottengo sempre un errore di layer invalido (il layer è ovviamente
> valido e perfettamente leggibile da QGIS): qualche idea di dove sbaglio?
>
> ad es. ha qualche influenza l'istruzione initQgis() che non capisco
> bene dove vada esattamente collocata: subito dopo l'import del modulo?
> nel main? nella classe mainWindow?
>
> oppure il "setPrefixPath" che non capisco se deve puntare a
> "/usr/lib/qgis" o a "/usr/bin/qgis"?

supponendo che tu abbia una funzione main basta inizializzare le
librerie come segue:

def main(app)
    QgsApplication.setPrefixPath(qgis_prefix_path, True)
    QgsApplication.initQgis()
    ...................
    [esecuzione del programma]
    ...................
    QgsApplication.exitQgis()
    sys.exit(app.exec_())

la variabile qgis_prefix_path per linux è "/usr" oppure "/usr/local"
se hai compilato qgis
mentre per windows è il path alla cartella qgis: "C:\\OSGeo4W\\apps\\qgis"

> 2) all'avvio del programma, mi viene segnalato un warning circa
> "QGraphicsScene::addItem: item has already been added to this scene";

solamente un warning nulla di preoccupante.

Saluti!

-- 
Salvatore Larosa
linkedIn: http://linkedin.com/in/larosasalvatore
twitter: @lrssvt
skype: s.larosa
IRC: lrssvt on freenode


Maggiori informazioni sulla lista Gfoss