0

我有以下代码。如何将 lonlat 值转换为以度为单位的 GPS 使用值?

更新:我不确定我使用了正确的词汇,但目前lonlat等于“2698.98978 1232.8998”。我想转换成度数,例如'41.2987 2.1989'。

lonlat是一个变量。请在代码中查看。

<html>
 <head>
 <script src="http://openlayers.org/api/OpenLayers.js"></script>
 <script type="text/javascript"> 
    function init(){
      map = new OpenLayers.Map('map');
      base_layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
      "http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );
      map.addLayer(base_layer);
      map.zoomToMaxExtent();
      map.events.register('click', map, handleMapClick);
    } 

    function handleMapClick(evt)
    {
       var lonlat = map.getLonLatFromViewPortPx(evt.xy);
       // use lonlat
       alert(lonlat);
    } 
 </script>
 </head>
 <body onload="init()">
  Hello Map.<br />
 <div id="map"></div>
 </body>
</html>
4

1 回答 1

0

你不应该使用这样 getLonLatFromViewPortPxgetLonLatFromPixel方法:

var lonlat = map.getLonLatFromPixel(evt.xy);

这将为您提供正确的坐标而无需任何变换。

于 2012-05-23T07:38:17.277 回答