Hello there! I have spent, no joke, over 5 entire work days trying to achieve this result, and....... I still haven't. Considering it's not actually a priority in the slightest and that I clearly can't leave well enough alone, I'm finally giving in and joined this community to see if one of y'all can do it for me (in much less time)...
I am trying to create... a network of neighboring points. The input is a shapefile of buildings' center points (with a starting point designated via parameter); the desired output is these same points, with an attribute putting them in an order that is essentially:
A) Point A
B) The nearest point to point A
C) The nearest point to point B, excluding A
D) The nearest point to point C, excluding A and B
E) The nearest point to point D, excluding A, B, and C
...and so on. Find the nearest neighbors, with exclusion -- the nearest point that is not already the nearest point to one earlier up the chain.
I actually made a looping custom transformer that did almost exactly this for me -- however, it leaned heavily on the NeighborFinder transformer, which is a blocking transformer and became way too slow way too quickly. I know how I could make this work using python, but all my ideas for that also require more flexibility in looping than I can get with FME (because I'd want to loop through all the features more than once, but not in a way that python inside a looping transformer would do....)
Even as I type this I'm having more ideas of approaches to try, but, again, I've spent way too much time on this and I have to give up. If anyone else has any thoughts on how to do this with the fewest manual steps within the process.... I'd love to hear 'em! Thanks! :)