gpt4 book ai didi

javascript - 如何使用传单图层控件切换 d3 svg 叠加层?

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:44:45 26 4
gpt4 key购买 nike

我有 3 个 d3 svgs 我想放在同一张传单 map 上。我希望能够像控制传单层一样轻松地控制它们。

这是 code that works ,但是很卡。

相关部分是第 75 行到末尾,我在其中创建了一个专门绑定(bind)到我的 d3 svg 组的自定义图层控件,实例化它,并在 addTo(map) 之前将其弹出到覆盖散列中。

var lineLayer = L.Class.extend({
initialize: function () {
return;
},
onAdd: function (map) {
railLineGroup.style("display", "block");
},
onRemove: function (map) {
railLineGroup.style("display", "none");
},
});
var railLineLayer = new lineLayer();
overlays["Rail Lines"] = railLineLayer;
L.control.layers(baseLayers, overlays).addTo(map);

必须有更好的方法来做到这一点。例如,因为这是一个 hack,图层控件不知道图层已经被激活,所以复选框未被选中。

如有任何帮助,我们将不胜感激!

最佳答案

我真的会推荐你看看Vector OSM , 特别是 tilejson.js .您会看到一个正确的实现,它使层控制与 SVG 覆盖一起工作。

关于javascript - 如何使用传单图层控件切换 d3 svg 叠加层?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20926490/

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