[Qgis-developer] How to set up QgsPointLocator.MatchFilter in python?
luna
luna.helios at googlemail.com
Fri Mar 27 04:00:16 PDT 2015
I'm working with QGis 2.8 and python.
I replaced my QgsMapCanvasSnapper to QgsSnappingUtils. The following code
works fine for me.
def canvasPressEvent(self,event):
x = event.pos().x()
y = event.pos().y()
startingPoint = QPoint(x,y)
utils = self.canvas.snappingUtils()
SegmentLocator = utils.snapToCurrentLayer(startingPoint, 2)
if SegmentLocator.isValid():
edge = SegmentLocator.edgePoints()
pt1 = edge[1]
pt2 = edge[0]
Now I try to set up the MatchFilter to get matches only from a particular
feature ID. But I don't know how to begin. The following code dosen't work.
fid = self.layer.selectedFeaturesIds()[0]
filter = QgsPointLocator.MatchFilter
match = QgsPointLocator.Match()
filter.acceptMatch(match.featureId() == fid)
SegmentLocator = utils.snapToCurrentLayer(startingPoint, 2, filter)
It would be nice if somebody can help me.
--
View this message in context: http://osgeo-org.1560.x6.nabble.com/How-to-set-up-QgsPointLocator-MatchFilter-in-python-tp5195736.html
Sent from the Quantum GIS - Developer mailing list archive at Nabble.com.
More information about the Qgis-developer
mailing list