Pages: 1
- Sujet précédent - QGIS Python: comment ajouter des lignes succesivement dans une boucle? - Sujet suivant
#1 Tue 02 August 2016 09:06
- Logispace
- Juste Inscrit !
- Date d'inscription: 18 Jul 2016
- Messages: 4
QGIS Python: comment ajouter des lignes succesivement dans une boucle?
Bonjour,
je souhaite créer un nouveau shapefile de points avec les mêmes attributs qu'un premier shapefile et y ajouter progressivement les lignes qui m’intéressent. Je vous donne l'exemple de mon code actuel à la suite.
Mon problème est que pour l'instant je n'obtiens qu'une seule ligne à mon nouveau shapefile file alors que je souhaite qu'il se complète au fur et à mesure des boucles avec de nouvelles lignes... Comment dois je changer mon script?
writer1= QgsVectorFileWriter(dir + "/Selection1.shp", "CP1250", provider.fields(), provider.geometryType(), provider.crs(), "ESRI Shapefile")
writer2 = QgsVectorFileWriter(dir +"/Selection2b.shp", "CP1250", provider.fields(), provider.geometryType(), provider.crs(), "ESRI Shapefile")
outelem=QgsFeature()
Code:
For value1 in DatesHours: [...] For value2 in RefValues : [...] For feature in macouche.getFeatures(): true=0 attri1=feature.attributes() if attri1[0] == value2 : ecart= datetime.datetime.strptime(value1,'%d/%m/%Y %H:%M') - datetime.datetime.strptime(feature['DATE3'],'%d/%m/%Y %H:%M') if ecart < zero: ecart= datetime.datetime.strptime(feature['DATE3'],'%d/%m/%Y %H:%M') - datetime.datetime.strptime(value1,'%d/%m/%Y %H:%M') if ecart_minN > ecart : ecart_minN=ecart DHp=feature['DATE3'] true = 1 else: if ecart_minP > ecart : ecart_minP=ecart DHn=feature['DATE3'] true = 1 if true == 1 : outelem.setGeometry(feature.geometry()) outelem.setAttributes(feature.attributes()) writer1.addFeature(write(outelem,feature))
Merci à vous.
Hors ligne
Pages: 1
- Sujet précédent - QGIS Python: comment ajouter des lignes succesivement dans une boucle? - Sujet suivant