Select 逐个选择功能并使用python脚本将其另存为图像
我使用了下面的代码来逐个选择特性。但当我运行脚本时,它只是选择最后一个功能并缩放它。我想选择每个特征并缩放它Select 逐个选择功能并使用python脚本将其另存为图像,select,qgis,Select,Qgis,我使用了下面的代码来逐个选择特性。但当我运行脚本时,它只是选择最后一个功能并缩放它。我想选择每个特征并缩放它 def SelectFeatures(self): layer = self.iface.activeLayer(); iter = layer.getFeatures(); for feature in iter: geom = feature.geometry() self.iface.mapCanvas().setSelectionColor(QColor("yel
def SelectFeatures(self):
layer = self.iface.activeLayer();
iter = layer.getFeatures();
for feature in iter:
geom = feature.geometry()
self.iface.mapCanvas().setSelectionColor(QColor("yellow"));
layer.setSelectedFeatures([feature.id()])
selected_features = layer.selectedFeatures()
self.iface.mapCanvas().zoomToSelected( layer )
self.iface.mapCanvas().refresh()
path = 'D:\Test'+ str(feature.id()) + '.png'
self.iface.mapCanvas().saveAsImage(path)
#QMessageBox.information(None, "DEBUG:", str(path))
现在,缩放过程太快,因为我无法看到缩放的选定特征。除此之外,每次生成的图像都是相同的。
我的目标是实现以下目标
对其余特征重复上述步骤 这是一个难题。。。但是你试过睡觉吗
def SelectFeatures(self):
layer = self.iface.activeLayer();
iter = layer.getFeatures();
for feature in iter:
geom = feature.geometry()
self.iface.mapCanvas().setSelectionColor(QColor("yellow"));
layer.setSelectedFeatures([feature.id()])
selected_features = layer.selectedFeatures()
self.iface.mapCanvas().zoomToSelected( layer )
self.iface.mapCanvas().refresh()
path = 'D:\Test'+ str(feature.id()) + '.png'
import time
time.sleep(5) # delays for 5 seconds
self.iface.mapCanvas().saveAsImage(path)
#QMessageBox.information(None, "DEBUG:", str(path))