我使用名为leaflet-omnivore的Leaflet插件将多边形插入Leaflet地图。我使用的语法是:
var polygon = omnivore.kml('placeName.kml');
polygon.addTo(map);
这很有效;多边形出现在我的地图上。然而,一旦它被添加,我想然后缩放/平移地图以尽可能地适合形状。我一直在尝试这个:
polygon.addTo(map).fitBounds();
...但是会引发错误:'fitBounds is not a function'
。我也试图用这个来找到坐标:
polygon.addTo(map).getBounds().getNorthEast();
...但是'cannot read property 'lat' of undefined'
会回来。
有人有什么想法吗?我很难过。文档是here,我使用的是Leaflet 1.0.0。
答案 0 :(得分:1)
您必须等到.kml
已加载。在'ready'
事件发生后,你的内容也是如此,在文档HERE中说明:
var polygon = omnivore.kml('yourKML.kml');
polygon.addTo(map);
polygon.on('ready', function() {
map.fitBounds(polygon.getBounds())
});