Mesafe sağlanan şehirler listesi için tampon bulan bir eklentim var. Eyalet ve şehir adları özellik tablosundan alınır ve buna göre filtrelenir. Benim eklentim, tuvalde bulunan diğer katmanlardan bağımsız olarak, tuvaldeki katmanın adını veya sırasını tanımlamalı ve bu katmandaki ilgili niteliklere erişmelidir.
Ben de sadece belirli bir katman adını kodunda işaret diğer bazı katmanları mevcut olsa da yineleme herhangi bir hataya neden olup olmadığını merak ediyorum?
Kodum aşağıda lütfen nerede değişiklik yapmam gerektiğini söyleyin ve değişiklik ne olurdu?
if dist and centerCity:
#QMessageBox.information(self.dlg, "info", "both True")
st = '"name" = \'' + centerCity + '\''
exp = QgsExpression(st)
else:
QMessageBox.warning(self.dlg, "Enter the distance","Enter the distance and try again.")
return #terminate the function
layer = self.iface.activeLayer()
it = layer.getFeatures(QgsFeatureRequest(exp))
feature = it.next()
mbuf = feature.geometry().buffer(dist, 2)
iterFeat = layer.getFeatures()
for f in iterFeat:
geom2 = f.geometry()
valTest = QgsGeometry.within(geom2, mbuf)