我想在QGIS中将图层的所有要素的几何与特定要素的几何进行比较。 这是我的代码:
class geometry_checker(base_prechecker):
def __init__(self):
self.target_layer_name = "layer_1"
def do_geom_check(self, layer, layers):
layer_name = self.get_layer_name(layer)
if layer_name == self.target_layer_name:
iter = layer.getFeatures()
for feat in iter:
geom = feat.geometry()
e = geom.type()
iter1 = layers.getFeatures()
for fea in iter1:
geom_a = fea.geometry()
f = geom.type()
if e == f:
return True
else:
return False
q = geometry_checker()
lay = iface.activeLayer()
layers = QgsMapLayerRegistry.instance().mapLayers()
print q.do_geom_check(lay)
如果我这样做,我就会得到无。我真正想要的是如果几何类型相同,它应该返回True else False。 有人请帮帮我
答案 0 :(得分:0)
有一个内置工具可以在版本10的任何许可级别为您执行此操作。它称为功能比较工具。这听起来就像你描述的那样。 http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#//001700000004000000