Quiero crear una capa de herramientas en QGIS 2.4 que seleccione cualquier característica vectorial que se cruce con ese punto. En mi script he probado la siguiente función:
def selectFeature(self, point, button):
pntGeom = QgsGeometry.fromPoint(point)
pntBuff = pntGeom.buffer( (self.canvas.mapUnitsPerPixel() * 2),0)
rect = pntBuff.boundingBox()
cLayer = self.canvas.currentLayer()
selectList = []
if cLayer:
provider = cLayer.dataProvider()
feat = QgsFeature()
provider.select([],rect)
while provider.nextFeature(feat):
if feat.geometry().intersects(pntGeom):
selectList.append(feat.id())
cLayer.setSelectedFeatures(selectList)
Pero tengo el siguiente error:
AttributeError: El objeto 'QgsVectorDataProvider' no tiene el atributo 'select' en la línea "provider.select([],rect)"
¿Qué estoy haciendo mal?