algorithm - 获取球体上均匀分布的点的区域

标签 algorithm math geometry

该网站上有几个关于在球体表面上分布点的问题,但所有这些问题都是基于实际生成该球体上的所有点。到目前为止,我最喜欢的是 Evenly distributing n points on a sphere 中讨论的黄金螺旋。 .

我需要用数万亿个点覆盖一个球体,但只需要实际生成表面的一小部分区域(地球向下约 10 米,查看大约 1 km^2 的区域)。为该区域生成的点必须与为整个球体生成的点相匹配(即,将小区域缝合在一起必须产生与生成较大区域相同的结果),并且生成应该非常快。

我尝试使用具有如此大量点的黄金螺旋,但因浮点精度问题而受阻。

我能想到的最好办法是在等距纬度处生成点,并根据该纬度的周长计算纵向间距。然而,结果远不能令人满意(尤其是由此产生的水平点环)。

有人对在球体表面生成一小块分布点有建议吗?

最佳答案

geodesic sphere 的顶点在这个应用程序中会很好地工作。

从一个二十面体开始,将每个面划分为任意分辨率的三角形网格,然后将点投影到球体的表面上。

关于algorithm - 获取球体上均匀分布的点的区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71916834/

相关文章:

Java MD5 哪一个是正确的?

Java - 用于物理计算的哪种数据类型?

python - 列表中两点之间的距离公式

java - 以编程方式检测一个点是否在圆弧上?

java - 计算沿相对对角线的点偏移

python - 如果 Ri > T 得到验证,则为每个元素 i 添加到列表 L 中的机会均等

algorithm - 从棋盘构建邻接图(用于 dijkstra)

algorithm - 如何开发一个程序来最大限度地减少手写调查的人工转录错误

java - 使用另一个数组中的运算符计算数组的值

java - 如何解决这个具有三个重叠形状的逻辑陈述?