【发布时间】:2015-05-05 16:58:34
【问题描述】:
按照文档 (https://github.com/graphhopper/graphhopper/blob/master/docs/core/weighting.md) 中描述的示例,我正在尝试阻止我的 graphhopper 路由中的边缘。 我试图找到必须被
阻挡的边缘EdgeIteratorState edge = hopper.getLocationIndex().findClosest(lat, lon, EdgeFilter.ALL_EDGES ).getClosestEdge();
但是在运行我的应用程序时,它显示一些完全不同的边缘被阻止,而不是我试图阻止的边缘。 我做错了什么,你有什么提示吗?自从四天以来我一直被这个问题困扰,没有留下任何想法。
【问题讨论】:
-
没有任何进一步的信息很难猜测。纬度,经度的顺序是否正确? getClosestEdge.getEdge 实际上是一些积极的价值吗?是否正确选择了块权重并且实际上包含找到的边缘 ID?
-
还有一个类似的例子。也许你以前试过这个? github.com/karussell/graphhopper-traffic-data-integration
-
感谢您的快速回复!是的,纬度/经度的顺序正确。更具体一点:在通过我的 BlockingWeighting 类的 calcWeight-Method 进行调试时,它为我提供了计算路径的以下边缘:28 [22->1、22->16]、30 [22->1。 22->16], 20 20 13-6, 19 19 6-5, 12 [1-22, 17 1-20, 12 1-2],禁止边是0,9和10。请看!attached picture。 - 计算出的路线以蓝色绘制。我正在使用离线地图进行室内路线 - 也许我在创建地图时做错了什么?
-
您是否禁用了速度模式? graphhopper.setCHEnabled(false)
-
我之前尝试过,但如果我这样做了,我会收到此错误:java.lang.IllegalStateException: Cannot load the graph when using instance of com.graphhopper.storage.GraphHopperStorage and location: /data/数据/cc.bitmedia.app.secureflex/cache/KS337_2/
标签: graphhopper