Il 05/04/2018 17:14, sarag ha scritto:
Purtroppo non riesco a venirne a capo ugualmente.

Facendo una cosa del genere

feat=lati.getFeatures()
for i in range(1, n-1):
     l1=feat[i].geometry().length()
     l2=feat[i+1].geometry().length()

il nuovo errore è: TypeError: 'QgsFeatureIterator' object does not support
indexing

Mi scuso se sto commettendo errori banali ma è la prima volta che mi
approccio a PyQGis.
Grazie davvero per la comprensione e la disponibilità.

Sara


non sarà ortodosso, ma funziona:

crea una lista vuota:

listalati=[]

poi riempila così:

for feat in lati.getfeatures():
    listalati.append(feat)

a questo punto puoi iterare su listalati come prima

for i in range(1, n-1):
        l1=listalati[i].geometry().length()
        l2=listalati[i+1].geometry().length()

ricordati che le liste partono da zero. quindi 1 è già il secondo lato.

un consiglio se sei alle prime armi: tieni aperta la consolle di python e fai 
il print degli oggetti che crei. in questo modo QGis ti dice cosa stai creando, 
cioè che cosè la tua variabile: una feature? un iteratore? ecc.

marco

--
Marco Guiducci - 055 4383194
SITA - Sistema informativo territoriale e ambientale
Regione Toscana - Via di Novoli 26 - 50127 Firenze

_______________________________________________
QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Rispondere a