Algorithm 在单位半球上均匀分布点
要在单位球体上均匀分布点,将使用保持恒定表面积的斐波那契螺旋 现在是否可以使用类似的方法在单位半球上均匀分布点而不拒绝点?将绝对值取为Algorithm 在单位半球上均匀分布点,algorithm,geometry,sampling,Algorithm,Geometry,Sampling,要在单位球体上均匀分布点,将使用保持恒定表面积的斐波那契螺旋 现在是否可以使用类似的方法在单位半球上均匀分布点而不拒绝点?将绝对值取为 cos_theta = abs(((i * offset) - 1) + (offset / 2)) 不起作用,因为它似乎将点成对聚集。通过for循环,将y值从-1+1/samples循环到1-1/samples: for i in range(samples): y = ((i * offset) - 1) + (offset / 2) 您想从0+
cos_theta = abs(((i * offset) - 1) + (offset / 2))
不起作用,因为它似乎将点成对聚集。通过
for
循环,将y
值从-1+1/samples
循环到1-1/samples
:
for i in range(samples):
y = ((i * offset) - 1) + (offset / 2)
您想从0+1/samples
循环到1-1/samples
。只需跳过第一个示例/2
迭代:
for i in range(samples / 2, samples):
y = ((i * offset) - 1) + (offset / 2)
当然,现在重写一点表达式会更干净,这样您就可以再次从
0
循环到samples'
,但这应该是进行更多重构的良好起点。请参见仅使用网格的一半初始化网格。此外,链接的Q/A还提供了其他方法来解决此问题…@Spektre球体三角剖分也是我考虑的一个选项,它更容易推理,但细分球体的开销似乎更大还有2个链接()与你的方法类似,但没有利用球坐标和圆周长的螺旋线。。。