javascript - 将 GeoJSON 对象包裹在 Leaflet.js map 周围

标签 javascript leaflet maps word-wrap geography

我有一个由 MarkerGeoJSON 对象组成的 Leaflet.js map 。有没有一种简单的方法来包裹它们,以便它们每隔 360 度定期出现?基本上,我希望整个 map 变得周期性。

这是我拥有的对象类型的说明(不包括我没有的背景 TileLayer):

Map with broken great circles

如何定期重复此数据,以便大圆不会被破坏,而是在 map 向左或向右滚动时每 360 度都保持完整?

最佳答案

一种方法是利用Leaflet.VectorGrid 。正如您在 Leaflet.VectorGrid GeoJSON example 中看到的那样,数据将换行。 (从架构上讲,发生这种情况是因为 VectorGrid 在环绕时加载具有相同坐标的矢量切片)。请注意,可能会出现一些伪影。

另一种方法是简单地复制数据(在每个经度上添加 360)。每边执行几次,并使用 WorldCopyJump 选项来防止用户滚动得太远。

关于javascript - 将 GeoJSON 对象包裹在 Leaflet.js map 周围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48994873/

相关文章:

javascript - `function (n) { .. }(jQuery)`是什么意思?

javascript - 如何使用传单插件将 Vue-Leaflet 中的 map 显示限制为特定边界(没有 vue2 包装器)

javascript - 非常基本的 javascript 函数调用

angularjs - 无效的 Geojson 对象 Angularjs &Leafletjs

c++ - 将数字范围映射到cpp中的值的简便方法

google-maps - 相机动画和用户相机移动之间的区别

javascript - Reactjs react 谷歌地图未定义

javascript - 某些 JavaScript 库是否使用原型(prototype)系统的动态方面?

javascript - 华丽的弹出窗口 - 灯箱问题,加上 mfp-hide 似乎什么也没做

javascript - 使用 Ajax 加载页面并在必要时加载新脚本