ol.proj.transform(coordinate, source, destination)
- 将坐标从源投影转换为目标投影。这将返回一个新的坐标(并且不会修改原始坐标)。
示例:
1、将地理坐标转为投影坐标
ol.proj.transform(pos, 'EPSG:4326', 'EPSG:3857')
2、将投影坐标转为地理坐标
ol.proj.transform(pos, 'EPSG:3857', 'EPSG:4326')
注意:为什么这样写,可以参看文章https://blog.csdn.net/lhjuejiang/article/details/105134063
我们一般用的比较多的是设置地图的中心点,所以使用的时候是将地理坐标转为投影坐标,如下所示。通常,数据存储在EPSG:4326中并显示在 EPSG:3857中。
function anmiteCenter(map, attr, zoom) {
let pos = [parseFloat(attr.lon), parseFloat(attr.lat)];
pos = ol.proj.transform(pos, 'EPSG:4326', 'EPSG:3857');
map.getView().animate({
center: pos,
zoom: zoom
});
}