本文整理汇总了Python中qgis.core.QgsFeature.fieldNameIndex方法的典型用法代码示例。如果您正苦于以下问题:Python QgsFeature.fieldNameIndex方法的具体用法?Python QgsFeature.fieldNameIndex怎么用?Python QgsFeature.fieldNameIndex使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类qgis.core.QgsFeature
的用法示例。
在下文中一共展示了QgsFeature.fieldNameIndex方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: save
# 需要导入模块: from qgis.core import QgsFeature [as 别名]
# 或者: from qgis.core.QgsFeature import fieldNameIndex [as 别名]
def save(self):
QApplication.setOverrideCursor(Qt.WaitCursor)
prv = self.lyr.dataProvider()
attrs = prv.fields().toList()
self.lyr.startEditing()
fls = []
for i in xrange(len(self.clusters)):
fls.append('clust_' + str(i))
nattrs = []
for fl in fls:
if self.lyr.fieldNameIndex(fl) == -1:
nattrs.append(QgsField(fl, 10))
if len(nattrs)>0:
self.lyr.dataProvider().addAttributes(nattrs)
self.lyr.updateFields()
i = 0
for cluster in self.clusters:
fln = fls[i]
# for fid in cluster:
feats = prv.getFeatures()
feat = QgsFeature()
while feats.nextFeature(feat):
if feat.id() in cluster:
self.lyr.changeAttributeValue(feat.id(), feat.fieldNameIndex(fln), 'True')
else:
self.lyr.changeAttributeValue(feat.id(), feat.fieldNameIndex(fln), 'False')
i += 1
self.lyr.commitChanges()
QApplication.restoreOverrideCursor()
示例2: save
# 需要导入模块: from qgis.core import QgsFeature [as 别名]
# 或者: from qgis.core.QgsFeature import fieldNameIndex [as 别名]
def save(self):
QApplication.setOverrideCursor(Qt.WaitCursor)
prv = self.lyr.dataProvider()
attrs = prv.fields().toList()
self.lyr.startEditing()
fls = ['Li', 'E_Li', 'Var_Li', 'Z_Li', 'p_value']
nattrs = []
for fl in fls:
if self.lyr.fieldNameIndex(fl) == -1:
nattrs.append(QgsField(fl, 6))
fls = ['neighbours', 'influence']
for fl in fls:
if self.lyr.fieldNameIndex(fl) == -1:
nattrs.append(QgsField(fl, 10))
if len(nattrs)>0:
self.lyr.dataProvider().addAttributes(nattrs)
self.lyr.updateFields()
feats = prv.getFeatures()
feat = QgsFeature()
i = 0
while feats.nextFeature(feat):
self.lyr.changeAttributeValue(feat.id(), feat.fieldNameIndex('Li'),
str(self.model.itemData(self.model.index(i, 0))[0]))
self.lyr.changeAttributeValue(feat.id(), feat.fieldNameIndex('E_Li'),
str(self.model.itemData(self.model.index(i, 1))[0]))
self.lyr.changeAttributeValue(feat.id(), feat.fieldNameIndex('Var_Li'),
str(self.model.itemData(self.model.index(i, 2))[0]))
self.lyr.changeAttributeValue(feat.id(), feat.fieldNameIndex('Z_Li'),
str(self.model.itemData(self.model.index(i, 3))[0]))
self.lyr.changeAttributeValue(feat.id(), feat.fieldNameIndex('p_value'),
str(self.model.itemData(self.model.index(i, 4))[0]))
self.lyr.changeAttributeValue(feat.id(), feat.fieldNameIndex('neighbours'),
str(self.model.itemData(self.model.index(i, 5))[0]))
self.lyr.changeAttributeValue(feat.id(), feat.fieldNameIndex('influence'),
str(self.model.itemData(self.model.index(i, 6))[0]))
i += 1
self.lyr.commitChanges()
QApplication.restoreOverrideCursor()
示例3: outattrPrep
# 需要导入模块: from qgis.core import QgsFeature [as 别名]
# 或者: from qgis.core.QgsFeature import fieldNameIndex [as 别名]
def outattrPrep(self, dlg, lyr):
feat = QgsFeature()
species = ''
production = ''
most = QDateTime.currentDateTimeUtc()
rn = dlg.tableWidget.rowCount()
for i in range(rn):
if i==0:
species = dlg.tableWidget.item(i, 0).text()
production = dlg.tableWidget.item(i, 1).text()
else:
species = species + ' | ' + dlg.tableWidget.item(i, 0).text()
production = production + ' | ' + dlg.tableWidget.item(i, 1).text()
flds = lyr.dataProvider().fields()
feat.setFields(flds, True)
feat.setAttribute(feat.fieldNameIndex('localid'), dlg.lineEdit_3.text())
feat.setAttribute(feat.fieldNameIndex('code'), dlg.lineEdit_5.text())
feat.setAttribute(feat.fieldNameIndex('largescale'), dlg.comboBox_4.currentText())
feat.setAttribute(feat.fieldNameIndex('disease'), dlg.comboBox_2.currentText())
feat.setAttribute(feat.fieldNameIndex('animalno'), dlg.lineEdit_6.text())
feat.setAttribute(feat.fieldNameIndex('species'), species)
feat.setAttribute(feat.fieldNameIndex('production'), production)
feat.setAttribute(feat.fieldNameIndex('year'), dlg.lineEdit_4.text())
feat.setAttribute(feat.fieldNameIndex('status'), dlg.comboBox_3.currentText())
feat.setAttribute(feat.fieldNameIndex('suspect'), self.dateCheck(dlg.dateEdit.date()))
feat.setAttribute(feat.fieldNameIndex('confirmation'), self.dateCheck(dlg.dateEdit_2.date()))
feat.setAttribute(feat.fieldNameIndex('expiration'), self.dateCheck(dlg.dateEdit_3.date()))
feat.setAttribute(feat.fieldNameIndex('notes'), dlg.textEdit.toPlainText())
feat.setAttribute(feat.fieldNameIndex('hrid'), self.hashIDer(most))
feat.setAttribute(feat.fieldNameIndex('timestamp'), most.toString('dd/MM/yyyy hh:mm:ss'))
return feat