gpt4 book ai didi

传单绘制后失去形状

转载 作者:行者123 更新时间:2023-12-02 09:26:14 25 4
gpt4 key购买 nike

我正在使用 leaflet显示 map 和 leaflet-draw plugin在此 map 上绘制形状。

我有下面的代码 ( see plunker ) 允许绘制形状。但是一旦形状完成,它就消失了。

绘制后使形状在 map 上可见还缺少什么?

    var mymap = L.map('mapid').setView([47.2090048, 7.7746663], 15);

L.tileLayer('https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token=pk.eyJ1IjoiZXJuc3RwIiwiYSI6ImNpcGdtMTUzOTAwMGV2Ymt3Z2JlYnMyejgifQ.gHxSIfBUM0-UiuWurWoEvQ', {
maxZoom: 18,
attribution: 'Map data &copy; <a href="http://openstreetmap.org">OpenStreetMap</a> contributors, ' +
'<a href="http://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, ' +
'Imagery © <a href="http://mapbox.com">Mapbox</a>',
id: 'mapbox.streets'
}).addTo(mymap);

var marker = L.marker([47.2090048, 7.7747663]).addTo(mymap);

// Initialise the FeatureGroup to store editable layers
var drawnItems = new L.FeatureGroup();
mymap.addLayer(drawnItems);

// Initialise the draw control and pass it the FeatureGroup of editable layers
var drawControl = new L.Control.Draw({
edit: {
featureGroup: drawnItems
}
});
mymap.addControl(drawControl);

最佳答案

您已经成功绘制了形状,但这里缺少的是您没有在 map 图层顶部显示绘制的形状,尽管您想要实现的是显示它。

您所要做的只是将绘制的图层添加到您的 map 之上。

例如

mymap.on('draw:created', function (e) {
var type = e.layerType,
layer = e.layer;

if (type === 'marker') {
// Do marker specific actions
}

// Do whatever else you need to. (save to db, add to map etc)
mymap.addLayer(layer);
});

您可以将此代码添加到您的 js 的末尾。这取自 docs

关于传单绘制后失去形状,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37832513/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com