如何得到一个距离矩阵的计算正在离线上我的服务器
How to get a Distance Matrix with the computation being made offline on my server
我希望得到几个地点之间的旅行距离和时间的近似值。
理想情况下,我希望能够发送位置的GPS坐标,使用OpenStreetMap的数据,并获得给定位置的距离矩阵输出,所有这些都将在我的AWS服务器上离线完成。(使用PHP或c++最好)
我对使用OpenStreetMap真的很陌生。我刚下载了ile-de-france.osm。pbf,这是法国一个地区的地图。
我不知道从哪里开始。我甚至不确定这样做是否简单。有人能给我指个方向吗?如果OpenStreetMap不是离线获取距离矩阵的最佳解决方案,那么什么才是呢?
为了计算旅行距离,你还必须安装一个路由器。选择一个可用的在线路由器(其中许多可以安装在本地,也可以离线使用)或离线路由器。好的选择是OSRM、GraphHopper和gosmore。
OSRM有一个距离矩阵调用,但目前仅限于一定数量的位置。我已经构建了一个脚本,使大距离矩阵与本地 OSRM服务器(它真的很容易在Ubuntu上编译)。这是https://github.com/sabas/OSRMdistance我已经计算了300多个位置的方阵…
有简单的公式来计算两个GPS坐标之间的距离。例如(你可能需要注意单位)
double t1 = sin(y1) * sin(y2);
double t2 = cos(y1) * cos(y2);
double t3 = cos(x1 - x2);
double t4 = t2 * t3;
double t5 = t1 + t4;
double rad_dist = atan(-t5/sqrt(-t5 * t5 +1)) + 2 * atan(1.0f);
double mile = rad_dist * 3437.74677 * 1.1508;
double meter = mile * 1609.3470878864446;
要找到步行/车辆距离,您可以通过匹配数据库中最近的"路径"将路径划分为检查点。
相关文章:
- 我可以计算多线程数的平均值吗?
- QWebEngine 5.7.1 离线导航加载缓存
- ActiveMq:持久队列和离线系统
- 如何离线安装熊猫和依赖项
- QT离线安装程序和兼容的C 编译器安装
- 'tedt'的离线定义
- 离线 Qt 文档
- 如何在QML(Qt)中离线运行OpenStreetMap
- CMAKE:外部项目更新和离线工作
- 如何在没有相机的情况下使用 Kinect 捕获的 RGB-D(请离线流示例代码)
- 缓存Google Maps供离线使用
- 离线嵌入式实时路由
- 几何体着色器计算的线在摄影机移动时消失
- 可以使用缓存使QML应用程序“离线支持”
- "= default"是否允许离线实施?
- c++ -为离线VS2013加载微软符号
- Postgresql服务器和客户端离线模式
- 离线虚拟方法
- 如何创建离线数据库与c++一起使用
- 如何得到一个距离矩阵的计算正在离线上我的服务器