在 Google 地图 JavaScript 应用程序的上下文中,获取特定纬度/经度的磁偏角的最佳方法是什么?
他们已经对此进行了分片。对于带有源代码的 Google 地图混搭,请参阅:-
这里是一个 Javascript/jQuery 示例,从 http://www.ngdc.noaa.gov.
获取某个纬度/经度位置的磁偏角。declination=0;
function setdecl(v){
console.log("declination found: "+v);
declination=v;
}
function lookupMag(lat, lon) {
var url=
"http://www.ngdc.noaa.gov/geomag-web/calculators/calculateIgrfgrid?lat1="+lat+"&lat2="+lat+"&lon1="+lon+"&lon2="+lon+
"&latStepSize=0.1&lonStepSize=0.1&magneticComponent=d&resultFormat=xml";
$.get(url, function(xml, status){
setdecl( $(xml).find('declination').text());
});
}
lookupMag(55.58552,12.1313);
由于某种原因,他们使用内部重定向到基于 HTTP 的服务器,因此您无法从像 JSFiddle 这样的安全站点使用它,但这个站点几个小时前在 codepen.io 上运行。
我们最近遇到了同样的问题,并为世界磁模型开发了 RESTful API。它封装了 WMM2015v2 的原始代码,是开放的,任何需要它的人都可以在这里使用: