如何在React Map GL(Mapbox)和Deck.gl中创建一个50平方公里的矩形或六边形网格,覆盖整个国家

时间:2019-12-18 16:42:09

标签: reactjs mapbox deck.gl react-map-gl

我正在尝试在覆盖整个国家的React Map GL(地图框)和Deck GL中创建一个矩形或六边形网格层。

这是我要实现的目标:http://webcoveragemap.rootmetrics.com/en-US

这些是我找到的解决方案:

  1. https://deck.gl/#/documentation/deckgl-api-reference/layers/s2-layer
  2. https://deck.gl/#/documentation/deckgl-api-reference/layers/h3-cluster-layer

我面临的问题是s2层使用S2 Cell令牌(我似乎无法理解如何计算,而类似地,h3群集层使用H3,为此我也找不到任何东西因此,有人可以向我解释如何使用H3,S2并计算50sq km的方框,这些方框可以在带有Deck GL的React Map G1上查看(如果需要),或者建议其他解决方案?

1 个答案:

答案 0 :(得分:0)

结果证明存在H3核心库(基于六边形的地理网格系统)的Java脚本版本。 https://www.npmjs.com/package/h3-js

以某种分辨率将lat / lng点转换为六边形索引所需的全部操作是以下代码:

const h3Index = h3.geoToH3(37.3615593, -122.0553238, 7);
// -> '87283472bffffff'