问题描述
问题更新:
如果我们正在运行自己的数据库和切片服务器,是否还需要运行自己的OSRM实例来使用 var arr = [-1,2,5,6,9,-1,3];
var len = arr.length;
const result = arr
.filter(value=>{
var count=0;
for(var i=0;i<len;i++)
{
if(arr[i]===value)
count++;
}
return count===1;
})
console.log(result);
通过OSMDroid获得路由?还是如果不运行我们自己的,是否要从某个地方的另一个OSRM实例中拉出?
我们正在设置Open Street Map数据实例和我们自己的服务器上的图块服务器,它们将为移动应用程序提供数据。
我的问题是关于路由:是否有理由设置Open Street Routing Machine / OSRM(http://project-osrm.org)而不是使用OSMDroid(https://github.com/osmdroid/osmdroid)或OSMBonusPack(https://github.com/MKergall/osmbonuspack)之类的东西? OSRM似乎对服务器有一些繁重的要求,但它可能还会带来其他好处,也许是通过简化前端的工作?
我们正在创建自己的OSM服务器,希望/期望我们将开始产生大量流量,并且我们正在尝试了解路由的最佳策略。大多数流量将通过我们的移动应用程序或移动浏览器进行。对于路由,我们实际上不需要的只是一条通过某些参考点连接起点和终点的折线,这些参考点将决定迫使路线穿过某些街道。感谢您为制定此计划提供帮助。
解决方法
好,所以我知道了。希望我的困惑可以帮助其他人更快地找到答案。
要连接另一个图块服务只是为了可视化,OSMDroid中已经有一个类XYTileSource.java
。但是,为了通过OSMBonusPack获取自己的路由数据(您自己的OSRM实例),您可以使用类OSRMRoadManager
,也许可以更改指向OSRM演示站点的字符串,但是也可以仅使用{{1} }和指向您自己的OSRM服务器的网址。