将谷歌地图北转换为磁北
Posted
技术标签:
【中文标题】将谷歌地图北转换为磁北【英文标题】:Convert Google Maps north to Magnetic north 【发布时间】:2012-11-22 11:10:56 【问题描述】:我正在构建一个连接到 android 应用程序的 Django 站点。 android 部分是一个导航器,该网站允许使用图像构建您自己的地图。
在这些地图的构建过程中,用户可以通过在谷歌地图实例上旋转地图图像来设置方位。
我正在使用 css 旋转图像,所以 0° 是“原样”的图像,而 360° 是倒置的图像:所以北方是“向上”的。
android 应用程序不会使用 gps 系统,所以我必须在磁场上中继以显示地图随着用户的移动而旋转(为了检测用户的移动,我有另一种方法,但这不是问题所必需的) ,我在this page 上发现谷歌地图中没有显示磁北,我必须对这些值进行一些更正,但我不知道该怎么做。
有人可以帮我将图像的旋转度数转换为北磁度数吗?
【问题讨论】:
【参考方案1】:听起来您正在寻找磁偏角值。首先,您需要获取您的位置。由于您没有 GPS,您将使用 NETWORK_PROVIDER 位置;这将足够接近以获得您的偏角值。
要了解旋转图像的距离和方向,您应该使用 NOAA 的 this API 之类的信息。
例如,如果您是@40.000,-105.250,您将进行此 API 调用:http://www.ngdc.noaa.gov/geomag-web/calculators/calculateDeclination?lat1=40&lon1=-105.25&resultFormat=xml
你会得到这个回报:
<?xml version="1.0"?>
<maggridresult>
<result>
<date> 2012.82514 </date>
<latitude> 40.00000 </latitude>
<longitude> -105.25000 </longitude>
<elevation units="km"> 0.00000 </elevation>
<declination> 8.90399 </declination>
<declination_sv> -8.01691 </declination_sv>
</result>
</maggridresult>
因此您可以将地图旋转 8.90399°
作为参考,here is a map 显示了近似的磁偏角值。
【讨论】:
好的,非常有趣的服务。只有一个问题,我可以将度数用作角度,将我在系统中找到的值加上 8.9°,还是我必须进行另一个转换步骤? 度数相同。指南针上有 360°,图像上有 360° 旋转。 磁偏角背景:ngdc.noaa.gov/geomag/declination.shtml以上是关于将谷歌地图北转换为磁北的主要内容,如果未能解决你的问题,请参考以下文章