I have a point layer that I create points in first. Then I have a line layer that I create a route that snaps to each of these points using the add feature tool. When I commit to the database, I have a trigger function that creates a second line layer that by slicing the route at each of the points and stores those segments.

(The points are utility poles, the first line layer is a fiber route, and the second line layer is for creating a CAD like dimensional drawing of the distance between the poles)

In my trigger function, I use st_intersects() and it works beautifully whenever a route segment is touching at least one point that was snapped to during initial digitizing but it ignores any new points.

However, if I move a route segment around such that it is touching new poles but not ones that it was snapped to during digitizing, the segments in the second layer do not get regenerated.

Based on my testing, I suspect that the snapping accuracy between digitizing and moving a node using the node tool are different and st_intersect has an really tight tolerance.

Any idea's on how to solve my dilemma?

  • 1
    It doesn't help with version 2, but work is underway so that in QGIS 3 the node tool will use the same snapping code as digitising. – ndawson Feb 18 '17 at 1:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.