Javascript 如何仅获取H3中六角环()的外侧边的顶点?
其要点相当直截了当,即使实现不是Javascript 如何仅获取H3中六角环()的外侧边的顶点?,javascript,h3,Javascript,H3,其要点相当直截了当,即使实现不是 我想得到六边形环的外边缘,而不是六边形的所有边缘。基本上是从环的外部边缘创建一个多边形,包含环内的所有内容。目前,我们可以使用geojson2h3.h3SetToFeature()来创建多边形 这看起来像: HexRingPolygon: 相反,我只想得到外部边缘,如下所示: 外部边缘: 为了实现一个外部边界,我目前正在使用kRing(),但是,由于该区域包含的六边形数量太多,因此在各种情况下,这种性能特征在移动设备上都无法使用。其中,作为一个hexRin
我想得到六边形环的外边缘,而不是六边形的所有边缘。基本上是从环的外部边缘创建一个多边形,包含环内的所有内容。目前,我们可以使用
geojson2h3.h3SetToFeature()
来创建多边形
这看起来像:
HexRingPolygon:
相反,我只想得到外部边缘,如下所示:
外部边缘:
为了实现一个外部边界,我目前正在使用kRing()
,但是,由于该区域包含的六边形数量太多,因此在各种情况下,这种性能特征在移动设备上都无法使用。其中,作为一个hexRing()
将使用最少数量的六边形
我如何才能做到这一点?以H3为中心的答案是使用K环,正如您所建议的,但这肯定是更多的计算(可能在计算六角体集和计算轮廓时都较慢) 这里的简单答案是使用
h3SetToMultiPolygon
的输出,然后简单地从geojson中删除第二个环。geojson的格式是
{
"type": "Feature",
"geometry": {
"type": "MultiPolygon",
"coordinates": [
// list of polygons, there's only one in your case
[
// list of loops: first is outline, the rest are holes
[...],
[...]
]
]
}
}
所以你所需要做的就是设定
geojson.geometry.coordinates[0] = [geojson.geometry.coordinates[0][0]]
它只将多边形设置为外环,将洞掉下来(未测试,但我认为这是正确的)