Вы должны преобразовать Lon/лат координаты в правильной проекции (или систему координат) с помощью
var olCoordinates = ol.proj.transform([lon, lat],"WGS84", "EPSG:900913")
Теперь вы можете установить центр с olCorrdinates.
Различные проекции имеют разные кодовые обозначения. WGS84 - это «нормальный» lon/lat и EPSG: 900913 - это проекция, часто используемая в веб-картах, таких как карты google, openstreetmap и bing.
Я думаю, что OpenLayers 3 имеет встроенную поддержку для преобразования из WGS84/EPSG: 4326 (lon/lat), но если вам нужно преобразовать в или из других систем координат, вы можете включить библиотеку proj4js. Openlayers будет интегрироваться с этой библиотекой и иметь возможность делать преобразования таким же образом.
Transform ДОКУМЕНТАЦИЯ http://openlayers.org/en/v3.1.1/apidoc/ol.proj.html
Proj4 Lib https://github.com/proj4js/proj4js
Edit: В примере вы имеете в виду, в центре место фактически установлен с долготу/лат.
view: new ol.View({
center: ol.proj.transform([37.41, 8.82], 'EPSG:4326', 'EPSG:3857'),
zoom: 4
})
EPSG: 4326 на самом деле так же, как WGS84 и EPSG: 3857 такая же, как EPSG: 900913. Это очень запутанно. Я был там сам.
Вам просто нужно изменить числа 37.41 и 8.82 на ваши координаты lon/lat. Если вы хотите изменить местоположение центра после инициализации, вам нужно будет использовать setCenter();
map.getView().setCenter(ol.proj.transform([lon, lat], 'EPSG:4326', 'EPSG:3857'))
Что это: «WGS84», «EPSG: 900913»? Я вижу эти вещи на многих сайтах, но я не совсем понимаю, что это такое. – SheperdOfFire
Это проекция карты или система координат. Есть много способов измерить мир, и это всего лишь кодовые имена по разным способам его выполнения. WGS84 являются lon/lat и EPSG: 900913 - это тот, который используется openstreetmap, google, bing и т. Д. Есть и другие, такие как UTM-проекции, которые выплевывают мир на маленькие прямоугольники и используют метрическую систему в качестве координат. –
Также позаботьтесь о порядке аргументов. Метод ol.proj.transform ожидает [долгота, широта], тогда как в некоторой программе используется порядок аргументов широты/долготы. Например, при выборе «что здесь» из контекстного меню карты Google местоположение отображается как широта/долгота. –