2013-08-07 150 views
1

我想要通过单击按钮获取GPS坐标,并将它们更改为EPSG:25832格式以居中我的地图。以下是我迄今编码:OpenLayers:将GPS坐标转换为EPSG:25832

jQuery('#btnGPS').click(function() { 
    if (navigator.geolocation) { 
    navigator.geolocation.getCurrentPosition(success); 
    } else { 
    alert("Not Supported!"); 
    } 
}); 

function success(position) { 
    alert(position.coords.longitude + ',' + position.coords.latitude); 
    var SRS_MAP = new OpenLayers.Projection("EPSG:25832"); 
    var SRS_LONLAT = new OpenLayers.Projection("EPSG:4326"); 
    var center = new OpenLayers.LonLat(position.coords.longitude,position.coords.latitude); 
    var test = center.transform(SRS_LONLAT,SRS_MAP); 
    alert(test); 
} 

最后我的地图对象:

map = new OpenLayers.Map('map',{ 
     controls: [ 
        new OpenLayers.Control.Navigation(), 
        new OpenLayers.Control.PanZoomBar(), 
        new OpenLayers.Control.ScaleLine(), 
        new OpenLayers.Control.KeyboardDefaults() 
       ], 
       projection: new OpenLayers.Projection("EPSG:25832"), 
       displayProjection: new OpenLayers.Projection("EPSG:4326"), 
       units: 'm', 
       maxExtent: new OpenLayers.Bounds(356570.500,5442150.416,383807.687,5462691.920), 
       maxResolution: 'auto', 
       numZoomLevels: 8 
      }); 

我总是得到相同的坐标回来,没有改造的。使用lon和lat的位置对象工作正常,但我无法使OpenLayers转换功能正常工作。我正在使用最新的标准OpenLayers。

我是OpenLayers的新手,所以请对这个解决方案非常具体。提前致谢。

回答

相关问题