javascript - 获取用户的位置,然后使用 GeolocateControl 地图框以一个端点作为用户的位置显示方向
问题描述
我正在为 mapbox 使用 web (js) api。
var geolocate = new mapboxgl.GeolocateControl({
positionOptions: {
enableHighAccuracy: true
},
trackUserLocation: true
})
map.addControl(geolocate);
当 I 时console.log(geolocate)
,我可以在(对象的)一些下划线字段中找到 lat lng 详细信息。找不到正确的方法来获取用户的 lat lng。但我无法在脚本中访问它,因为没有按下地理定位按钮。
找到用户位置后,我想显示从用户位置到地图上固定点的方向。如何做到这一点?如果事情不清楚,请告诉我。谢谢你。
解决方案
每次更新时,您都可以使用 geolocate 控件的'geolocate'
event检索用户的当前位置。例如:
geolocate.on('geolocate', function(position) {
console.log(`latitude: ${position.coords.latitude}, longitude: ${position.coords.longitude}`);
});
一旦您检索到如上所示的纬度和经度,您可以将这些坐标与“地图上的固定点”的坐标一起传递给Mapbox Directions API,以生成用户当前位置和所述固定点之间的路线。
推荐阅读
- arrays - 如何在C中删除字符串中的重复字符
- python - 在 Python 中使用 Selenium 在 Chrome 中禁用图像加载
- bash - 是否可以简化这个 BASH eval 表达式?
- angular - Spring boot - 一次具有多个请求的角度会话
- c# - Newtonsoft JsonConverter 将字符串或对象转换为对象
- c# - 查询数据库,将结果保存为对象,然后用对象的属性填充 DataGridView
- continuous-integration - 如何使用 Github Actions 自动化(通常)交互式构建脚本?
- java - 在 Weblogic 12c (12.2.1.3) 中使用提供的 jax-rs 2.0 和 Jersey 2.1x
- javascript - 使用 AJAX 成功提交表单后如何在数据表中添加新行
- python - 通过 Set Comprehension 使用 pyodbc 从 SQL 中检索数据给出不可散列的类型:'pyodbc.Row'