I have 600+ bus lines that I need to make a single network from containing just the lines/roads the buses uses. The problem is that mostly the bus lines are made following a road network making all lines on most roads 100% parallel. But on not so few places the road network is missing so on those places the bus lines are hand plotted making them not parallel at all. Lines changes and this should therefor be updated two to three times annually. How can I use FME to automatically create those missing roads not in the road network out of the different hand plotted lines? Sometimes just one, but mostly 5-10 closely dotted line.
If you buffer the hand plotted lines (making sure the buffers are wide enough so that they will touch or overlap eachother), dissolve the buffers and then create a centerline out of it you should get a reasonably accurate line (1) for those sections.
Not sure whether that is what you're after, but it's a step closer for sure.
If you buffer the hand plotted lines (making sure the buffers are wide enough so that they will touch or overlap eachother), dissolve the buffers and then create a centerline out of it you should get a reasonably accurate line (1) for those sections.
Not sure whether that is what you're after, but it's a step closer for sure.
Hello @redgeographics,
I have the simmilar problem. ButI have a lines they laying "ON" each other. So it means 1 Polyline but there are actually 3 or more polylines. They are overlapping. How to separate them?
Thanks
Hello @redgeographics,
I have the simmilar problem. ButI have a lines they laying "ON" each other. So it means 1 Polyline but there are actually 3 or more polylines. They are overlapping. How to separate them?
Thanks
Since that original question I have actually had a project doing exactly that. I am unfortunately not at liberty to share end-results yet as it was for public transit concessions that were not yet granted so there is an embargo on them but it boiled down to receiving overlapping route lines and needing to separate them so they'd run parallel.
In broad terms the process is:
- Determine how many routes share one line segment
- Intersector to get them down to a single line, create a list of route numbers
- Sort that list (so that the order of the parallel lines will be roughly the same from one segment to the next!)
- Offset the lines, using the OffsetCurveGenerator. There's some additional trickery here: if it's an odd number of lines I have the middle one conform to the original line segment, but if it's an even number I place them on either side of the original line). The offsetting is also done on alternating sides.
In my original case there were 3 different kinds of routes, each with an associated thickness on the final map so the offset distance was calculated by working backwards from that thickness (off the top of my head the most important lines would be 2 pt wide which at that scale equated to 50 meters, and then the other two ended up to be 35 and 25 m)
It worked well for longer segments but short ones that were shared by many lines ended up being unusable so for the end result a human cartographer still had to do manual edits.