[josm-dev] route handling (was: Find bus stops along a way)

Roland Olbricht roland.olbricht at gmx.de
Fri Nov 9 07:40:45 GMT 2012


Hi,

> I have been looking at that and I'll have to look again as it seemed quite complicated :-)

Yes, it is. Unfortunately it needs a lot of refactoring. It is even not the most efficient approach, but I simply went short of time.

> I did see that you only use highway=bus_stop for bus routes, but I'm
> slowly but surely in the process of converting all of them to
> public_transport=platform.

That's a good idea. I think at current state of affairs it should take into account both "highway=bus_stop" and "public_transport=platform". Feel free to update the code.

> I have created a Python script which does quality control on numbered node
> cycle and walking routes, which I'd like to extend to PT now. As a first
> step I'd like to do what your plugin does; detect stops and propose to add
> them to the route. Later on, I'd like to actually create a route relation
> based on stops that need to be served. (Which will, of course, need to be
> checked manually for correctness before it is uploaded)

There is even code prepared for this in the plugin. A call to
new PublicTransportAStar(Node start, Node end).shortestPath()
will return a data structure that contains the shortest path found by an A*-algorithm, written as partial ways (because it may use ways only partial). What is missing here is an appropriate filter (don't route over stairs or other non-streets), which would go where the comment
// Further tests whether the way is eligible.
is. And the projection from off-road bus stops to starting nodes. And then to make sense of the result. In particular, the plugin has no code to split ways automatically, and JOSM won't mark partly ways AFAIK.

Once again: feel free to work with the code. Given my OSM agenda, I won't work on the public_transport plugin code before the end of the year, but I will give any help to make it useful (or recycle the useful parts in a new plugin).

Cheers,

Roland



More information about the josm-dev mailing list