javascript - 开放层 3 : how to display only a KML layer

标签 javascript kml openlayers-3

我正在尝试创建一个 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/

相关文章:

javascript - 使谷歌地图响应调整大小

php - 动态kml谷歌地图

javascript - 带有 OpenLayers 的 InfoWindows

Ruby on Rails 5 中的 Javascript 错误 "Uncaught TypeError: element.popover is not a function"

javascript - 无法使用 openlayers 3 将标记放置在正确的坐标处

javascript - 如何检查数组对象的属性是否与另一个对象数组中的值之一匹配

javascript - 在缓存页面上触发 Javascript?

JavaScript:Promise.All() 和 Async/Await 以及 Map()

c# - 在 C# 中生成 KML 文件的最佳方法是什么?

c# - 到处获取 "<kml:...",更新 Kml 文件