以下是德黑兰在Google地图上的坐标。 https://www.google.com/maps/place/Tehran/@35.6964895,51.0696315,10z/data=!3m1!4b1!4m2!3m1!1s0x3f8e00491ff3dcd9:0xf0b3697c567024bc
35.6961° N, 51.4231° E
我正试图在OpenLayers中找到这个坐标,但我没有运气,这是我的代码:
map = new ol.Map({
target: 'sample-map',
layers: [
new ol.layer.Tile({
source: new ol.source.OSM()
})
],
view: new ol.View({
center: [35.6961, 51.4231],
zoom: 4
})
});
我也试图以度数获取当前坐标,但我不知道如何。
答案 0 :(得分:1)
我不完全确定问题是什么,但我可以这样说:您需要将center
上的参数换成[51.4231, 35.6961]
。
根据Openlayers documentation,center
的格式为[x-axis, y-axis]
或您的[East, North]
格式。
在您的特定情况下,您的源投影不是纬度/经度,因此您必须进行转换。以下代码适合您:
map = new ol.Map({
target: 'sample-map',
layers: [ new ol.layer.Tile({
source: new ol.source.OSM()
})],
view: new ol.View({
center: ol.proj.transform([51.4231, 35.6961], 'EPSG:4326', new ol.source.OSM().getProjection()),
zoom: 10
})
});