<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">Hey,<br>
<br>
</div>
<blockquote
cite="mid:CAH_H74=vCSO7YU_wZaVYoTQWwyw0HKBJzPBV75bcBUN-ENdeGg@mail.gmail.com"
type="cite">
<div dir="ltr">>This is called geocoding and not provided by
GraphHopper. Although we<br>
>have some (closed source) prototype we still recommend other
existing
<div>>solutions.</div>
<div><br>
</div>
<div>Isn't there a way then to somehow manually find which
node/edge ID is associated with street name by reading routing
data provided from graphopper.sh script? I only need to figure
out 5-10 street's names associated with their edge/node ids so
that I could manipulate them via hardcoding. I mean, yes, it's
that unpractical and basic but that's my goal here :) <br>
</div>
</div>
</blockquote>
<br>
yes, sure: loop over all edges! This extremely expensive and
error-prone as there are multiple identical named streets even in
one city! But you can find the names:<br>
<br>
EdgeIterator iter = getAllEdges();<br>
while (iter.next())<br>
{<br>
iter.getName()<br>
}<br>
<br>
<blockquote
cite="mid:CAH_H74=vCSO7YU_wZaVYoTQWwyw0HKBJzPBV75bcBUN-ENdeGg@mail.gmail.com"
type="cite">
<div dir="ltr">>Where the last option probably would be the
simplest one as there is<br>
>already a (hidden) method for it in OSMReader called
isInBounds or just<br>
>use OSM tools like osmosis:<br>
><a moz-do-not-send="true"
href="http://wiki.openstreetmap.org/wiki/Osmosis#Extracting_bounding_boxes"
target="_blank">http://wiki.openstreetmap.org/wiki/Osmosis#Extracting_bounding_boxes</a><br>
><br>
>Or do you need to define it per request? What is your
usecase?
<div><br>
</div>
<div>Yes, my usecase would be to define per request: </div>
<div>-First request calculates the fastest path </div>
<div>-Point A is moving inside the map (GPS tracking on) </div>
<div>-Timer should recalculate path each 30s or so</div>
</div>
</blockquote>
<br>
Ok, but why would you need to find a path in a subgraph - to limit
search space? Wouldn't it make more sense to re-compute the whole
path (where you could reuse parts of the old result) or if that is
too expensive you could re-compute a path in a bounding box leading
you back to the original path.<br>
<br>
<div><br>
</div>
<div><span
style="color:rgb(80,0,80);font-family:arial,sans-serif;font-size:13px">>
>* limit the search to only nodes in this area (this is only
possible if</span><span
style="color:rgb(80,0,80);font-family:arial,sans-serif;font-size:13px">
no CH is used)</span><br>
</div>
<div><span
style="color:rgb(80,0,80);font-family:arial,sans-serif;font-size:13px">>
><br>
</span></div>
<div><span
style="color:rgb(80,0,80);font-family:arial,sans-serif;font-size:13px">>
how is this possible to implement? <br>
<br>
</span></div>
Will work for none CH only. You'll have to tweak the algorithm to
accept only edges which are in the bounds:<br>
edgeFilter = new EdgeFilter() {<br>
accept(EdgeIteratorState state) {<br>
base = state.getBaseNode();<br>
adj = state.getAdjNode();<br>
int baseLat = graph.getLatitude(base);<br>
int baseLon = graph.getLatitude(base);<br>
...<br>
return bbox.contains(baseLat, baseLon) ||
bbox.contains(adjLat, adjLon);<br>
}<br>
}<br>
dijkstra.setEdgeFilter(edgeFilter);<br>
<br>
Regards,<br>
Peter.<br>
</body>
</html>