Skip to main content
Solved

Spatial Tolerance


mapper
Contributor
Forum|alt.badge.img

I have 2 datasets one has been loaded into a enterprise database and then exported with the object_id of the enterprise database. I am trying to spatially join this object_id back to the original data. The problem I am having is that the process of loaded and then exporting the data has changed the coordinates slightly. See images below. I am wondering if there is any way of manipulating the coordinates of the features (ie truncating some or all of the digits after the decimal) So that I can use the spatialrelator with the EQUALS test. I have some polygons that are with in polygons so buffering and using WITHIN as some other posts have suggested would not be ideal.

Polygon A

Polygon B

Best answer by jdh

You can use a CoordinateRounder and specify the precision of your coordinates. You may wish to save the original geometry as an attribute so you can restore it after your spatial joins.

View original
Did this help you find an answer to your question?

4 replies

jdh
Contributor
Forum|alt.badge.img+28
  • Contributor
  • Best Answer
  • March 6, 2017

You can use a CoordinateRounder and specify the precision of your coordinates. You may wish to save the original geometry as an attribute so you can restore it after your spatial joins.


itay
Supporter
Forum|alt.badge.img+17
  • Supporter
  • March 7, 2017

Another option is to use the StringFormatter set to '.0f' which will truncate the values and result in no decimals ( e.i 1158346.343 > 1158346)

I usually a comined approach gives the best results, so first check for equals and the non equals treat first by rounding and checking and if there are stil non equals then finallt use the truncating method to check for equals.

This way you maximize the quality of the matching result.

Hope this helps.


ebygomm
Influencer
Forum|alt.badge.img+39
  • Influencer
  • March 7, 2017

You could also turn them into points, and then use the point on point overlayer to find matches as that has a tolerance you can set.


mapper
Contributor
Forum|alt.badge.img
  • Author
  • Contributor
  • March 7, 2017
jdh wrote:

You can use a CoordinateRounder and specify the precision of your coordinates. You may wish to save the original geometry as an attribute so you can restore it after your spatial joins.

thanks! CoordinateRounder seems to have done the trick!

 

 


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings