[GraphHopper] turn restrictions
Bruno Carle
bruno.carle at gmail.com
Tue Aug 19 16:39:48 UTC 2014
Hi,
FYI
With TraversalMode.NODE_BASED it finds a route ignoring turn
restrictions (as expected)
With TraversalMode.EDGE_BASED_1DIR it fails to find any route.
With TraversalMode.EDGE_BASED_2DIR test works fine
With TraversalMode.EDGE_BASED_EDGE_BASED_2DIR_UTURN it finds an invalid
route (see http://imgur.com/IEvDObX)
Regards
Bruno
On Tue, Aug 19, 2014 at 9:37 AM, Bruno Carle <bruno.carle at gmail.com> wrote:
> Thanks Peter,
> I am now using the turn_costs branch, my test is still not working, but I
> will continue to look at it today
> Regards
> Bruno
>
>
> On Mon, Aug 18, 2014 at 6:22 PM, Peter <graphhopper at gmx.de> wrote:
>
>> Bruno,
>>
>> please see the turn_costs branch where the turn cost configuration has
>> moved into the flagencoder. The API is still under development and the
>> branch is not yet merged into master:
>>
>> new CarFlagEncoder(5,5,1) // enabled for restrictions only
>> new CarFlagEncoder(5,5,3) // enabled for turn costs also (this works in
>> unit tests but turn costs is currently unused for OSM data)
>>
>> or from config file the string "car|turnCosts=true" can be used or via
>> new EncodingManager("car|turnCosts=true")
>>
>> see for more details regarding TraversalMode.EDGE_BASED_* and related
>> docs in e.g. EdgeBasedRoutingAlgorithmTest
>>
>> As stated in the docs EDGE_BASED_1DIR should be as fast as the default
>> node based traversal but could very rarely produce some unnecessary detours
>> when turn restrictions are involved. Use EDGE_BASED_2DIR if you need the
>> most precise routes but this is roughly 2 times slower, where
>> EDGE_BASED_2DIR_UTURN also considers u-turns and is a lot slower, but I'm
>> not sure if this is necessary at all in practise.
>>
>> Regards,
>> Peter.
>>
>> Hi Peter,
>> I am trying to get the turn restrictions working. But i can not get it to
>> route accordingly. Actually I can not find out how to enable it.
>> Also I saw that TurnCostStorage.getTurnCost() is never referenced, except
>> in some in commented code in GraphhopperStorage... maybe there is no
>> Weighting class implemented that takes into account the turn restrictions
>> yet?
>>
>> Here is my test, the turn restriction being tested should prevent us from
>> going from Blanicka into Urugayska.
>>
>>
>> String osmFile= "../../maps/OLD/prague-latest.osm.pbf";
>>
>>
>> GraphHopper graphHopper=new GraphHopper().setInMemory(true)
>> .setGraphHopperLocation("/tmp/ghLoc")
>> .setOSMFile(osmFile)
>> .disableCHShortcuts()
>> .setEncodingManager(new EncodingManager("car",4,20));
>>
>> graphHopper.importOrLoad();
>>
>>
>> GHRequest ghRequest=new GHRequest(new GHPoint(50.07483120416,
>> 14.4390392303),new GHPoint(50.07333, 14.43869));
>>
>> GHResponse ghResponse=graphHopper.route(ghRequest);
>> System.err.println(ghResponse.getPoints());
>>
>>
>>
>> route returned :
>> http://imgur.com/QWLgoOL
>>
>>
>> Route expected goes around Namesti Miru square:
>> http://imgur.com/MftaocZ
>>
>> Thanks,
>> Bruno
>>
>>
>> _______________________________________________
>> GraphHopper mailing listGraphHopper at openstreetmap.orghttps://lists.openstreetmap.org/listinfo/graphhopper
>>
>>
>>
>> _______________________________________________
>> GraphHopper mailing list
>> GraphHopper at openstreetmap.org
>> https://lists.openstreetmap.org/listinfo/graphhopper
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstreetmap.org/pipermail/graphhopper/attachments/20140819/f9427dec/attachment.html>
More information about the GraphHopper
mailing list