Skip to main content
Solved

Spatial relator issue line vs points

  • January 23, 2023
  • 1 reply
  • 35 views

checcosisani
Contributor
Forum|alt.badge.img+12

Hi

I tried to join two linear datatset using this approach

I created (snipper) center point from one lines dataset and then I used the spatial relator to join the info to the 2 lines dataset but due to the mismatch of the coordsys of two datasets(I suppose) the center point doesn't touch the line (see picture)

imageI suppose that this is related to the tolerance during reprojection do you have same experience ?

 

thx

 

PS I solved creating a buffer for the center points

 

Francesco

Best answer by nielsgerrits

Getting points exactly on lines is hard to do because of floating point precision coordinates. (Coordinates in FME are not snapped to a grid.)

 

As an alternative for the buffering and spatial relator method you can use a PointOnLineOverlayer and use a Point Tolerance.

 

If you want to find out what a usable tolerance is, you can get a NeighborFinder to find the distances, but I think these are very small.

This post is closed to further activity.
It may be an old question, an answered question, an implemented idea, or a notification-only post.
Please check post dates before relying on any information in a question or answer.
For follow-up or related questions, please post a new question or idea.
If there is a genuine update to be made, please contact us and request that the post is reopened.

1 reply

nielsgerrits
VIP
Forum|alt.badge.img+60
  • 2938 replies
  • Best Answer
  • January 23, 2023

Getting points exactly on lines is hard to do because of floating point precision coordinates. (Coordinates in FME are not snapped to a grid.)

 

As an alternative for the buffering and spatial relator method you can use a PointOnLineOverlayer and use a Point Tolerance.

 

If you want to find out what a usable tolerance is, you can get a NeighborFinder to find the distances, but I think these are very small.