磁北地理定位

时间:2017-06-21 19:32:15

标签: javascript math geolocation coordinates compass-geolocation

我正在制作一个指向静态坐标位置(纬度,经度)的交互式指南针。我用以下内容阅读了用户的位置:navigator.geolocation.watchPosition( positionFound , error );(Javascript)

我将指南针旋转: heading = Math.atan2( Math.sin(locationLon-userLon) * Math.cos(locationLat), Math.cos(userLat) * Math.sin(locationLat) - Math.sin(userLat) * Math.cos(locationLat) * Math.cos(locationLon-userLon)); heading = heading * 180/Math.PI + 180;

现在问题是每个用户都获得另一个指向位置,但它必须指向相同的位置,因为它们使用相同的坐标。 Click to get a picture of the compass page

现在我发现当页面被加载或刷新时,北方总是停留在移动设备的第一个前(北)位置。而不是真正的北方。 那么有一种方法可以始终保持真正的北方位置(磁北)吗?

这是它的简短演示:https://mister-e.nl/compass (在手机上测试它并转动手机并有时刷新它)

这是我的第一个话题(初学者)。我希望我已经为你们解释清楚了。你也许可以帮我解决这个问题。如果您需要查看更多代码,请告诉我。

问候,尼克

0 个答案:

没有答案