【发布时间】:2021-08-05 22:31:33
【问题描述】:
围绕地理定位和设备方向使用一些浏览器 API。
如果我知道人的方向(想想罗盘 0 - 360 度),是否有可能知道他们的指向是否与给定的纬度和经度一致?
不知道这个的数学或逻辑......
【问题讨论】:
标签: javascript geolocation device-orientation
围绕地理定位和设备方向使用一些浏览器 API。
如果我知道人的方向(想想罗盘 0 - 360 度),是否有可能知道他们的指向是否与给定的纬度和经度一致?
不知道这个的数学或逻辑......
【问题讨论】:
标签: javascript geolocation device-orientation
根据this的回答,有一个公式可以从两对坐标(纬度和经度)计算角度:
const angleFromCoordinate = (lat1, lon1, lat2, lon2) => {
// Returns angle in degrees based on coordinates
const p1 = {
x: lat1,
y: lon1,
};
const p2 = {
x: lat2,
y: lon2,
};
return (Math.atan2(p2.y - p1.y, p2.x - p1.x) * 180) / Math.PI;
};
您可以使用此功能从当前位置获取目的地的方向(角度),然后将其与指南针给出的角度进行比较,准确度取决于您的用途。
【讨论】: