Skip to main content

I'm using OpenStreetMap inside my analysis and I do want to find all features around a certain point ("basepoint"). I do achieve that by using the Neighbor Finder and the solution works quite well. The distance is set by using a public parameter. The only downside is that I need to set up the maximum distance of the Neighbor Finder based on the LL84 coordinate system, which goes to something like roughly 0.001 as distance for 100 meter. This is quite unintuitive for the user.

The best approach I come up with is, that I convert all my features and the "basepoint" by using a Reprojector into some UTM coordinate system. That seems to work quite well, but I would like to get a solution that doesn't require the user to search for the correct UTM system for the data. Am I right in the assumption, that there is no mathematical approach to convert these lat/lat distances like 0.001 to meters, based on my understanding that would always require some knowledge of the location (in fact the longitude?) of the features, right?

As far as I know you are right. My approach would be to Reproject ( to meters), then use the NeighborFinder and then Reproject back. For exact distances you will need to figure out what projection to use. If the distance does not have to be very accurate, you could use a global projection.


Instead of using the vanilla "NeighborFinder" add a "GeographicNeighborFinder" which will give you the options of meters, feet, etc. Essentially it is reprojecting for you but wrapped up nicely in a custom transformer from the FME Hub (store).


Reply