谷歌地图API V3-检查坐标是否在后端的DirectionRoute附近
Google Maps API V3 - Check whether a co-ordinate is near a DirectionRoute in the backend
我正在使用Google Maps API V3在我的Java Web应用程序中创建一个自定义地图,并将MySql作为数据库。
我有一个功能可以通过前端添加自定义标记,并在后端保存标记坐标(lat/lng)。
我计划在前端添加方向搜索功能,并在后端保存结果(单一路线)。
每当添加标记时,我都想找出标记位置附近的所有路线(预先保存)。
有人能建议我一种有效的方法来存储路线细节,以及将其与标记坐标进行比较的方法吗。
注:
我已经了解了Way points和overview_path,但它们并没有为我提供与标记坐标进行比较的完整坐标列表。
提前感谢
如果您将路点的坐标保存在数据库中,则可以使用Haversine公式搜索离标记最近的航路点此查询包含公式并使用PDO
$stmt = $dbh->prepare("SELECT name, lat, lng, ( 3959 * acos( cos( radians(?) ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(?) ) + sin( radians(?) ) * sin( radians( lat ) ) ) ) AS distance FROM mytable HAVING distance < ? ORDER BY distance LIMIT 0 , 1");
// Assign parameters
$stmt->bindParam(1,$center_lat);//lat coordinate of user
$stmt->bindParam(2,$center_lng);//lng coordinate of user
$stmt->bindParam(3,$center_lat);//lat coordinate of user
$stmt->bindParam(4,$radius);//Radius in miles
当您将路由保存在数据库中时,使用地理哈希来计算路由经过的所有边界框,并将它们存储在另一个表中(有两个字段-geohash,route_id作为PRIMARY)。
搜索路线时,计算以用户位置为中心、距离为半径的圆中的所有边界框,然后使用geohash IN (circle_hashes)
查询。
相关文章:
- 未能从后端触发javascript
- 检查浏览器'在asp.net的后端代码中启用或禁用了s JS
- Ajax登录技术(后端php)
- 将Rails后端添加到JS/HTML/CSS应用程序时,正确的文件位置是什么
- 视图没有't在模拟后端时加载
- 是否可以在不使用外部后端的情况下编写grafana数据源插件
- 如何将Angular 2用于各种网站&使用PHP作为后端的模块
- 如何在不重新加载URL的情况下查询Node.Js的后端并更新页面
- 从后端检查Open Social小工具中的用户身份验证
- 如何使用python后端和web前端提供braintree客户端令牌
- 某些Magento后端管理按钮已停止工作
- 构建一个HTML小部件来嵌入付费内容-如何确保与后端的通信安全
- 为什么Express.js后端的CORS设置不起作用
- 调用后端、多路径变量、Ext Js
- 如何断言后端端点已被调用
- 骨干关系是否需要后端
- 与带下划线的后端同步时,转换为 CamelCase 以在 JavaScript 中使用
- 使用 Node 后端设置 webpack 热开发服务器以进行生产
- 是否有任何不需要后端的验证码角度指令
- 如何通过内容类型为“image/jpeg”的 AJAX 调用将画布图像从 GUI 保存到后端