如何在Open图层中获取经度和纬度

时间:2018-06-19 05:17:53

标签: reactjs openlayers latitude-longitude openlayers-3

我使用带有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]

2 个答案:

答案 0 :(得分:1)

OpenLayer正在开发不同的位置格式,如EPSG:3857,EPSG:4285等。 有一些变换/投影api enter link description here

使用此API并将您的位置转换为所需的格式

答案 1 :(得分:1)

如果您只想找到转换坐标的方法,可以使用ol.proj.transform(coordinate, source, destination)

使用此

ol.proj.transform([8732987.679175382, 1920132.5190330548], 'EPSG:3857', 'EPSG:4326')

将此作为输出

[78.44976308230713, 16.99405070970775]

另请注意,您可以在线要素上使用getFirstCoordinategetLastCoordinate方法来获取第一个和最后一个坐标。