[GraphHopper] Detecting the orientation of an edge against the orientation of the way in OSM
Bruno Carle
bruno.carle at gmail.com
Thu Jun 12 11:52:56 UTC 2014
Our overrides rely on the orientation of the way in osm. They can be
oriented (e.g. when a user wants to avoid using a road in one direction,
but in the other direction it is ok )
If the nodeIdx can not be used, then I will use the coordinates.
Thanks
Bruno
On Thu, Jun 12, 2014 at 11:39 AM, graphhopper <graphhopper at gmx.de> wrote:
> Hey Bruno,
>
> in a version before 0.3 it was hard to find out the orientation of *an
> edge* as for bidirectional algorithms there is a forward and backward
> search going on. Maybe a solution via your "baseNode < adjNode" check is
> the only one.
>
> *But* now that I better understand your use case ... to find out how the
> original *OSM way* (not the edge) is oriented is impossible as we "forget"
> this information while import. What do you want to achieve with this or
> what information relies on the original OSM way orientation?
>
> Regards,
> Peter.
>
>
> Hi,
> The reverseNavigation flag is meant to tell me if the edge passed as
> parameter
> will be used in the path returned by route() in the same direction as the
> edge's way in the OSM file, or in the reverse direction.
>
> I use this information in order to apply the overrides that we
> implemented at Rinkai.
>
> From what I understood in yesterday's discussion, in the current release
> there is already such a flag beeing passed to the weighting function, but I
> am using a cloned repository which was last merged march 17.
>
> Thanks
> Bruno
>
>
>
> ----- Forwarded Message -----
> Sent: Wednesday, June 11, 2014 4:27 PM
> Subject: Re: Detecting the orientation of an edge against the orientation
> of the way in OSM
>
> Hey Bruno,
>
> looks like my mail in yahoo.de does not like message from your yahoo.com
> ;) hope they'll resolve this somehow. (for now keep me in CC)
>
> What do you want to achieve with reverseNavigation?
>
> The reverse variable is necessary if the backward search is going on -
> e.g. you need to call edge.getReverseSpeed. So I guess you just need
> reverseNavigation=reverse but not sure ...
>
> Regards,
> Peter.
>
>
>
>
> > Hi,
> > I have some code to override the edge's weight depending on the
> orientation of the way in OSM. Please could you tell me if the snippet
> below is correctly detecting the orientation of the edge against the
> orientation of the way in OSM? My doubt is mainly for the first statement
> reverseEdge=...
> >
> > public double calcWeight( EdgeIteratorState edge, boolean reverse ) {
> > ...
> > // is the edge in the same direction as way in OSM
> >
> > boolean reverseEdge=edgeIteratorState.getBaseNode()
> <edgeIteratorState.getAdjNode();
> > ...
> >
> > // compare reverseEdge and reverse to figure out if we are
> navigating the edge forward
> >
> > // or backward according to way in OSM
> > boolean reverseNavigation=reverseEdge!=reverse;
> > ...
> >
> > Thanks!
> > Bruno
> >
>
>
> --
> GraphHopper.com - Fast & Flexible Road Routing
>
>
> _______________________________________________
> 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/20140612/2932bc9f/attachment.html>
More information about the GraphHopper
mailing list