Graphhopper找不到点

Din*_*ino 2 routing openstreetmap graphhopper

我已经Graphhopper使用$ git clone命令并使用此处提供的亚洲地图在Ubuntu Server中进行了安装。

我使用以下命令启动了服务器:

$ ./graphhopper.sh web asia_india.pbf
Run Code Online (Sandbox Code Playgroud)

然后在发送以下请求时出现错误:

http://serveraddresss:8989/route?calc_points=false&point=9.983242,76.390418&point=9.990618,76.421088
Run Code Online (Sandbox Code Playgroud)

我从服务器收到的答案是:

{“ info”:{“ errors”:[{“ message”:“找不到点1:9.9906,76.421”,“详细信息”:“ java.lang.IllegalArgumentException”}]}}}

显然,在功能getPaths()核心/ src目录/主/ JAVA / COM / graphhopper / GraphHopper.java,功能locationIndex.findClosest(point.lat, point.lon, edgeFilter);没有得到任何附近的道路。

但是,如果我在Graphhopper网站上尝试相同的点,它将得到它的最近点和到它的距离。(您可以在此处看到此内容)。

我想知道为什么我的Graphhopper服务器设置会提供与graphhopper.com不同的结果。

  1. 是否需要更改任何配置才能进行实时Graphhopper设置?

  2. 还可以有人告诉我如何在启动时单独重建jar文件, $ ./graphhopper.sh web asia_india.pbf以便可以打印一些图像并尝试调试或改进系统吗?

  3. 该功能如何locationIndex.findClosest(point.lat, point.lon, edgeFilter);工作?我实际上不是来自Java背景。

Kar*_*ell 5

您可以使用更大的查找半径进行播放:

index.highResolution=1000
Run Code Online (Sandbox Code Playgroud)

(我们正在研究更动态的解决方案)

但是,正如您所看到的那样,您的周围确实没有道路,因此也可以找到未找到路线的意义。取决于您的用例。

2)也有人可以告诉我如何重建jar文件

你的意思是./graphhopper.sh clean

函数如何locationIndex.findClosest(point.lat,point.lon,edgeFilter);

它是一种四叉树,我们在内存中构建该文件并将其刷新为特殊压缩格式的光盘。