Mateusz,
The difference is in the small component snapping.
"Impossible route between points" indicates that the two snapping points
are on different small-sized Strongly Connected Components (SCC) (i.e. on two
separate islands)
"No route between points" indicates that the two snap points are on the
same component, but there is no route between them.
OSRM identifies every road edge as either belonging to a particular "small
component" (an SCC with fewer than 1000 nodes, e.g. an island), or "the large
component" (there is only one of these globally).
During initial route finding, we snap coordinates to the nearest edge.
If both the start and end snap to the same SCC, we attempt to route. If the
route fails, you'll get "No route between points". This can happen if you
route between two locations on the global "large component", i.e. between
Europe and the USA.
If both coordinates snap to the same small component, then by definition, you
will get a route (this is what an SCC is).
If one coordinate snaps to a small component, and one to the large component,
the first point will be searched to find the nearest point on the large
component. Then we attempt to route.
The only time "impossible route between points" can really happen is during
test cases or if you fiddle with settings. Because the threshold for "small
component" is 1000 nodes, there is no "large component" created during test
cases.
This leads us to the situation where you can snap points to two separate
small components, and leads to the error "Impossible route between points".
That's what's happening in your test example - the one-way roads are creating
separate SCC islands.
There's a blog post here that gives an overview for the reasoning behind this
somewhat complicated logic:
https://www.mapbox.com/blog/smart-neighbor/
<https://www.mapbox.com/blog/smart-neighbor/>
daniel
> On Feb 20, 2017, at 9:42 AM, Mateusz Loskot <[email protected]> wrote:
>
> On 20 February 2017 at 13:51, Mateusz Loskot <[email protected]> wrote:
>> [...]
>> I run the OSRM processing and service:
>>
>> osrm-extract.exe -p C:\apps\osrm-5.5.0\profiles\car.lua
>> 89_car_two_consecutive_oneways.osm
>> osrm-contract.exe 89_car_two_consecutive_oneways.osrm
>> osrm-routed.exe 89_car_two_consecutive_oneways.osrm
>
>
> FYI, I've tested those queries using build based on the latest master
> and I'm getting the same results as on Windows with OSRM 5.5.0.
>
> Best regards,
> --
> Mateusz Loskot, http://mateusz.loskot.net
>
> _______________________________________________
> OSRM-talk mailing list
> [email protected]
> https://lists.openstreetmap.org/listinfo/osrm-talk
_______________________________________________
OSRM-talk mailing list
[email protected]
https://lists.openstreetmap.org/listinfo/osrm-talk