试图使用geoJSON,但坐标看起来很奇怪?

时间:2017-08-14 03:06:12

标签: openlayers openlayers-3

我尝试使用我自己创建的geoJSON在我的OpenLayers地图上绘制矢量。

在我的数据库中,我存储了经度和纬度:

Latitude: 59.125226
Longitude: 15.996094

然而,这些不起作用,在OpenLayers的示例代码中,坐标看起来像这样:

[[[-5e6, 6e6], [-5e6, 8e6], [-3e6, 8e6], [-3e6, 6e6]]],
[[[-2e6, 6e6], [-2e6, 8e6], [0, 8e6], [0, 6e6]]],
[[[1e6, 6e6], [1e6, 8e6], [3e6, 8e6], [3e6, 6e6]]]

我的坐标现在不起作用,这是我尝试过的但是“点”仍然显示在地图的中心,我猜是0,0?

{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
   "type": "Point",
   "coordinates":  [ 15.996094,59.125226 ]
}
}
]
}

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

您可能正在尝试在非lat / lon地图上绘制纬度/经度坐标。大多数商业地图使用EPSG:3857投影(以米为单位),因此ol将您的特征放置在距离0,015,59米处。

有很多方法可以转换输入,但目前尚不清楚如何获取数据。要简单地转换某些内嵌GeoJSON中的坐标,您可以使用以下内容:

   coordinates: ol.proj.transform([15.996094,59.125226], 'EPSG:4326', 'EPSG:3857')