首先我们需要一份离线谷歌地图,可以使用太乐地图下载也可以使用bigmap下载。这里不再过多阐述。
把地图资源拷贝到服务器目录下(注:Jboss直接拷贝到war包下一层,Tomcat直接拷贝到webapp目录下,不要直接提交到SVN上,我使用的是Jboss,这样子因为地图资源图片非常多会参与编译,用起来非常不方便),然后启动服务器。
接下来就是使用openlayers加载地图了。我这里使用的jquery,当然你也可以使用其他方式。
1.首先创建地图中心点
var center = ol.proj.transform([106.24947, 37.08698],'EPSG:4326','EPSG:3857')
2.添加使用离线地图的tile
var sffLineMap = new ol.layer.Tile({
source:new ol.source.XYZ({
projection:"EPSG:3857",
url:'./tile_new/{z}/{x}/{y}.png'//我把地图命名为tile_new放在Jboss的war包下,请注意找正确图片路径以免加载不出来
})
});
3.定义kml矢量图层的样式(为了展示边界,我选择了kml加载)
//加载宁夏省边界kml
var vector_province = new ol.layer.Vector({
source: new ol.source.Vector({
url: './kml/Nxborder.kml',
forma