使用Leaflet的可见GeoJSON路径的中心点

时间:2015-03-02 18:34:04

标签: javascript maps leaflet

我正在开发一个项目,该项目显示以所选国家和邻国为中心的地图,所有这些都使用GeoJSON。我想知道是否有办法获得一个国家可见部分的中心点?

项目的一部分涉及添加国家标签作为标记。到目前为止,我可以添加标记:

  1. 国家中心点
  2. 可见边界框的中心点
  3. 第一种方法很可能将标签放在视图之外(或部分在视图中),第二种方法可以改进,但是可以将标签放在国家之外的区域,因为边界框是一个国家过于简化的区域。理想情况下,我可以获得一个形状的剪切区域,以便我可以找出它的中心点,看看这个标签的位置是否会有所改善,但我不知道该怎么做。

1 个答案:

答案 0 :(得分:0)

不要认为你可以使用它上面的leaflet.js进行这样的空间变换,但turf.js之类的声音可能具有必要的功能。假设你有你的国家geojson和你的viewport bbox,这样的东西可能会起作用:

turf.pointOnSurface(turf.intersect(countryPoly, viewportBbox));

草皮应该与传单很好地配合。 (尽管如此,我还没有尝试过。)