gpt4 book ai didi

javascript - 传单 (geojson) 多边形上的简单标签

转载 作者:IT王子 更新时间:2023-10-29 03:22:10 24 4
gpt4 key购买 nike

我正在尝试我认为是一个相当常见的用例,其中包含传单多面体对象。

我使用 geojson 创建了 MultiPolygon:

var layer = L.GeoJSON(g, style_opts);

我想要的是在每个多边形的中心放置一个简单的文本标签。 (例如,将州名放在每个州的中心)。

我看过: https://groups.google.com/forum/?fromgroups=#!topic/leaflet-js/sA2HnU5W9Fw

它实际上覆盖了文本,但是当我添加一堆多边形时,它似乎以奇怪的方式使标签偏离中心,我目前无法找到问题所在。

我还看过:https://github.com/jacobtoye/Leaflet.label

但是当您将鼠标悬停在多边形上时,这似乎只会将标签放在多边形上,而不会静态地停留在多边形上。

我认为我最好的做法是使用第一个链接,并找出它改变位置的原因,但与此同时,如果有人知道在传单中的多边形上放置标签的快速简便方法,非常感谢。

此外,如果我对以上两个链接有任何错误的假设,请随时纠正我。

非常感谢。

最佳答案

传单标签插件也允许静态标签,参见 demo .折线标签不是静态的唯一原因是它会随着您沿着折线移动而四处移动。

您可以通过覆盖多边形的 bindLabel() 来做得更好,但这是将静态标签添加到多边形中心的简单方法:

label = new L.Label()
label.setContent("static label")
label.setLatLng(polygon.getBounds().getCenter())
map.showLabel(label);

http://jsfiddle.net/CrqkR/6/

关于javascript - 传单 (geojson) 多边形上的简单标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13316925/

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