我正在尝试创建一个 OpenLayers map ,该 map 仅显示 KML 图层,而没有 basemap 或底层切片图层。
KML 图层将是室内楼层 map ,但它不需要位于特定坐标位置的现有 map 之上。我只需要单独显示楼层 map ,无需其他 map 。我还想设置平移限制,以便用户无法平移离开 map 。
下面是我用来在现有 basemap 之上成功显示 KML 图层的一些代码。我尝试了很多方法来尝试让 KML 图层自行显示,但没有成功。
任何人都可以帮忙解决这个问题,或者告诉我需要对下面的代码进行哪些更改才能单独显示 KML?
var vector = new ol.layer.Vector({
source: new ol.source.Vector({
url: MAPS_URL + 'map1.kml',
format: new ol.format.KML()
})
});
var map = new ol.Map({
target: 'map',
layers: [
new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'sat'})
}),
vector
],
view: new ol.View({
center: ol.proj.transform([37.41, 8.82], 'EPSG:4326', 'EPSG:3857'),
zoom: 2
})
});
map.addLayer(vector);
谢谢!
最佳答案
正如 Jonatas 和 Sauerwein 指出的那样,我只需移除瓷砖层即可。
啦:
var vector = new ol.layer.Vector({
source: new ol.source.Vector({
url: MAPS_URL + 'map1.kml',
format: new ol.format.KML()
})
});
var map = new ol.Map({
target: 'map',
layers: [vector],
view: new ol.View({
center: ol.proj.transform([37.41, 8.82], 'EPSG:4326', 'EPSG:3857'),
zoom: 2
})
});
map.addLayer(vector);
关于javascript - 开放层 3 : how to display only a KML layer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30895906/