Solved

How to "fix" a MultiCurve object ?


Badge +1

Hello !

 

I have MultiCurve objects (GeoJson MultiLineString) that represent routes along roads, and which have some geometry issues : sometimes lines are overlapping, and some lines meet at a point but with opposite direction.

Here is the overall dataset :

FME_questionAnd here is a problematic area :

FME_question2Exemple dataset is available [here].

So my question is : is it possible get a cleaner file, with no overlapping lines or segments, and with a better global direction consistency ? And how to do so ?

I tried to use Deaggregator, Intersector, Snapper, LineCombiner; and a few more, but so far I don't fully understand what I am doing, and don't get closer to what I want.

 

Thanks in advance for any tip or help :)

icon

Best answer by DanAtSafe 12 April 2021, 08:10

View original

3 replies

Userlevel 5
Badge +29

It seems the file you shared is no long available. Try the LineCombiner with the Input Feature Topology set to Vertex Noded.

 

Or you can pass the geom through a LineOnLineOverlayer then into a LineCombiner. Have a look at the attached workbench

 

 

Userlevel 1
Badge +11

Hi @mickael​ Your data has some line segments that are not quite overlapping and share end nodes. If you're not concerned about which to keep then I'd suggest deaggregating the feature and then use a Matcher with the lenient option to get just the unmatched and single-matched features. Then reaggregate afterwards.

Badge +1

Thanks gentlemen !

Thank to your help, I eventually got the expected result, using :

Deaggregator > Matcher (with Lenient option) > Aggregator1 > LineCombiner > Aggregator2

(second Aggregator aims at producing a MultiLineString GeoJson output, instead of multiple features. This can probably be improved somehow)

@danatsafe​ : Indeed I am not really concerned about which overlapping nodes / segments are keeped or not

 

Result looks like this :

FME_question3 

Reply