如何获取Open layers中的经纬度
How to get the latitude and longitude in Open layers
我正在使用 React.JS 和开放图层从位置 A 到位置 B 绘制一条线。我想获取位置 A 和位置 B 的经纬度。
绘制完成后我添加了一个监听器。但它给出的坐标如下。如何获取经纬度?
听众:
draw.on('drawend',function(e){
console.log("Co Ordinates :",e.feature.getGeometry())
//console.log("Co Ordinates :",e.feature.getGeometry().getExtent())
});
控制台:
控制台中打印的范围和平面坐标值如下
extent_:(4) [8732987.679175382, 1920132.5190330548, 8735555.9637923, 1920254.817578509]
flatCoordinates:(4) [8732987.679175382, 1920132.5190330548, 8735555.9637923, 1920254.817578509]
OpenLayer 正在处理不同的位置格式,例如 EPSG:3857、EPSG:4285 等。
还有一些Transform/Projectionapienter link description here
使用此 api 并将您的位置转换为您想要的格式
如果您只是在寻找一种转换坐标的方法,您可以使用 ol.proj.transform(coordinate, source, destination)
使用这个
ol.proj.transform([8732987.679175382, 1920132.5190330548], 'EPSG:3857', 'EPSG:4326')
将此作为输出
[78.44976308230713, 16.99405070970775]
另请注意,您可以在线要素上使用 getFirstCoordinate
and getLastCoordinate
方法来获取第一个和最后一个坐标。
我正在使用 React.JS 和开放图层从位置 A 到位置 B 绘制一条线。我想获取位置 A 和位置 B 的经纬度。
绘制完成后我添加了一个监听器。但它给出的坐标如下。如何获取经纬度?
听众:
draw.on('drawend',function(e){
console.log("Co Ordinates :",e.feature.getGeometry())
//console.log("Co Ordinates :",e.feature.getGeometry().getExtent())
});
控制台:
控制台中打印的范围和平面坐标值如下
extent_:(4) [8732987.679175382, 1920132.5190330548, 8735555.9637923, 1920254.817578509]
flatCoordinates:(4) [8732987.679175382, 1920132.5190330548, 8735555.9637923, 1920254.817578509]
OpenLayer 正在处理不同的位置格式,例如 EPSG:3857、EPSG:4285 等。 还有一些Transform/Projectionapienter link description here
使用此 api 并将您的位置转换为您想要的格式
如果您只是在寻找一种转换坐标的方法,您可以使用 ol.proj.transform(coordinate, source, destination)
使用这个
ol.proj.transform([8732987.679175382, 1920132.5190330548], 'EPSG:3857', 'EPSG:4326')
将此作为输出
[78.44976308230713, 16.99405070970775]
另请注意,您可以在线要素上使用 getFirstCoordinate
and getLastCoordinate
方法来获取第一个和最后一个坐标。