openlayers4加载天地图示例
解决方法:
var map = new ol.Map({
layers:[
new ol.layer.Tile({
source:new ol.source.XYZ({
title: "天地图路网",
url:"http://t2.tianditu.com/DataServer?T=vec_w&x={x}&y={y}&l={z}"
})
}),
new ol.layer.Tile({
source:new ol.source.XYZ({
title: "天地图文字标注",
url: "http://t2.tianditu.com/DataServer?T=cva_w&x={x}&y={y}&l={z}"
})
})
],
target: 'map',
view: new ol.View({ center: ol.proj.transform( [113.373171,23.104508] ,'EPSG:4326' ,'EPSG:3857'),
zoom: 15
})
});
其中ol.proj.transform( [113.373171,23.104508] ,'EPSG:4326' ,'EPSG:3857')是用来转坐标系的,因为113.373171,23.104508坐标是在百度地图上拾取的,而天地图和百度地图是不同的坐标系,所以同一个地点,经纬度不同,要转化,虽然转化了,但误差还是比较大,无法准确定位到指定的位置,误差在1公里左右。所以经纬度值不能通过百度地图拾取器获取,要想获取精准的天地图经纬度请参考:http://yayihouse.com/yayishuwu/chapter/1250
本文地址:http://yayihouse.com/yayishuwu/chapter/1252