[Gfoss] aggiungere un feature tramite python ad un layer

Salve non so se qualcuno mi può aiutare

Tramite python in qgis 2.0 devo aggiungere una feature con gli stessi campi ad shape puntuale aggiornando i campi

Qualcuno mi sa indicare il codice?

2014/1/14 Salvo caligiore <elyparker1@gmail.com>:

Salve non so se qualcuno mi può aiutare

Tramite python in qgis 2.0 devo aggiungere una feature con gli stessi campi
ad shape puntuale aggiornando i campi

Qualcuno mi sa indicare il codice?

http://www.qgis.org/en/docs/pyqgis_developer_cookbook/vector.html

guarda la sezione Modifying Vector Layers > Add Features
ciao
p

--
Paolo Corti
Geospatial software developer
web: http://www.paolocorti.net
twitter: @capooti
skype: capooti

Il giorno 14/01/14 18:13, "Paolo Corti" <pcorti@gmail.com> ha scritto:

2014/1/14 Salvo caligiore <elyparker1@gmail.com>:

Salve non so se qualcuno mi può aiutare

Tramite python in qgis 2.0 devo aggiungere una feature con gli stessi
campi
ad shape puntuale aggiornando i campi

Qualcuno mi sa indicare il codice?

http://www.qgis.org/en/docs/pyqgis_developer_cookbook/vector.html

guarda la sezione Modifying Vector Layers > Add Features
ciao
P

No quel codice non va bene in quanto definisce i campi ex novo(definendo
manualmente i campi shape) mentre a me serviva qualcosa che che
aggiungesse sostanzialmente un nuovo record/elemento con 40 campi

Ho risolto con questo codice
   def nuovoRecord(self):
    
  self.nuovo=QgsFeature()
  self.myfields=self.livello.dataProvider().fields()
  self.nuovo.setFields(self.myfields)
  
Il solo problema è che devo PER FORZA usare un campo globale come
self.myfields per tenere la lista dei campi, ossia non posso usare una
variabile globale, altrimenti qgis esplode
Cosa almeno funziona
Qualcuno conosce un¹alternativa?

ciao

Il giorno Thu, 16 Jan 2014 14:00:40 +0100
Salvo caligiore <elyparker1@gmail.com> ha scritto:

ciao Salvo,

Il giorno 14/01/14 18:13, "Paolo Corti" <pcorti@gmail.com> ha scritto:

>2014/1/14 Salvo caligiore <elyparker1@gmail.com>:
>> Salve non so se qualcuno mi può aiutare
>>
>> .....
......... mentre a me serviva
qualcosa che che aggiungesse sostanzialmente un nuovo record/elemento
con 40 campi

Ho risolto con questo codice
   def nuovoRecord(self):
  
  self.nuovo=QgsFeature()
  self.myfields=self.livello.dataProvider().fields()
  self.nuovo.setFields(self.myfields)

Il solo problema è che devo PER FORZA usare un campo globale come
self.myfields per tenere la lista dei campi, ossia non posso usare una
variabile globale, altrimenti qgis esplode
Cosa almeno funziona
Qualcuno conosce un¹alternativa?

per te sarà chiaro, ma per me che leggo meno: cosa vuoi dire con "campo
globale" (non va bene) e "variabile globale" (va bene) ?

ciao

ciao,
giuliano

Il giorno 18/01/14 10:45, "giulianc51" <giulianc51@gmail.com> ha scritto:

Il giorno Thu, 16 Jan 2014 14:00:40 +0100
Salvo caligiore <elyparker1@gmail.com> ha scritto:

ciao Salvo,

Il giorno 14/01/14 18:13, "Paolo Corti" <pcorti@gmail.com> ha scritto:

>2014/1/14 Salvo caligiore <elyparker1@gmail.com>:
>> Salve non so se qualcuno mi può aiutare
>>
>> .....
......... mentre a me serviva
qualcosa che che aggiungesse sostanzialmente un nuovo record/elemento
con 40 campi

Ho risolto con questo codice
   def nuovoRecord(self):
  
  self.nuovo=QgsFeature()
  self.myfields=self.livello.dataProvider().fields()
  self.nuovo.setFields(self.myfields)

Il solo problema è che devo PER FORZA usare un campo globale come
self.myfields per tenere la lista dei campi, ossia non posso usare una
variabile globale, altrimenti qgis esplode
Cosa almeno funziona
Qualcuno conosce un¹alternativa?

per te sarà chiaro, ma per me che leggo meno: cosa vuoi dire con "campo
globale" (non va bene) e "variabile globale" (va bene) ?

Scusami intendevo variabile locale e invece ho detto l’opposto globale

In pratica se invece di usare self.myfields uso myfields direttamente,
qgis va in crash
ciao

Il giorno Sun, 19 Jan 2014 02:15:22 +0100
Salvo caligiore <elyparker1@gmail.com> ha scritto:

Il giorno 18/01/14 10:45, "giulianc51" <giulianc51@gmail.com> ha
scritto:

>Il giorno Thu, 16 Jan 2014 14:00:40 +0100
>Salvo caligiore <elyparker1@gmail.com> ha scritto:
>
>..............................
>> Il solo problema è che devo PER FORZA usare .....
>
>per te sarà chiaro, ma per me che leggo meno: cosa vuoi dire con
>"campo globale" (non va bene) e "variabile globale" (va bene) ?

Scusami intendevo variabile locale e invece ho detto l’opposto globale

In pratica se invece di usare self.myfields uso myfields direttamente,
qgis va in crash

ok, adesso è più chiaro :slight_smile:

per la mia (scarsa) conoscenza di python non dovrebbe succedere, non
riesco quindi a capire le cause del problema che segnali: speriamo che
qualche esperto ci illumini :slight_smile:

ciao

ciao,
giuliano