Sphere Lab / 球面采样实验室

SPHERICAL DISTRIBUTION / 球面分布与几何测量

INSTRUMENT / 02 · 离线运行
Fibonacci
单位球面 S² · R = 1
准备中
拖动旋转 · 滚轮 / 双指缩放 · 方向键 / ±
单元面积 / 平均面积小 ← 1 = 平均 → 大
≤ 0.50×1.00×≥ 1.50×
0 / 0
连续过渡仅用于观察:指标与导出对应当前目标帧,点位插值及热力图交叉淡化不作为新的数值结果。暂停可冻结过渡。
READ THE SURFACE

为什么用 Voronoi 面积衡量均匀性?

将球面上的任意位置分配给测地距离最近的采样点,得到球面 Voronoi 单元 Vᵢ。单位球面总面积为 4π;若有 n 个不同的点,理想平均单元面积 Ā = 4π / n。

CV(A) = √[ Σᵢ(Aᵢ − Ā)² / n ] / Ā
热力图颜色 = Aᵢ / Ā

同一单元使用同一种颜色,表示整个单元的面积,不是该像素处的点密度。比值大于 1 表示这个点负责的区域偏大;小于 1 表示偏小。默认固定色标将平均值放在浅色中心,超出范围的值会饱和。切换色标只改变外观,不改变计算。

ACCURACY MATTERS

估计方法与阅读边界

本页用固定旋转的 Fibonacci 探针均匀覆盖球面,按最近点归属计数:Âᵢ = 4π · mᵢ / M。这是确定性数值积分估计,并非精确球面多边形面积,也没有自动置信区间。总估计面积守恒为 4π;增大探针数可检查离散误差。探针少时,空单元与量化误差尤其明显。

热力图在可见球面上逐像素查找最近点,再用该点的估计单元面积着色。边界是屏幕栅格近似,拖动时降低显示分辨率,停止后恢复;它不决定面积计算。表面明暗包含辅助光照,不表示面积变化;背面单元需旋转后查看。悬停查看单元数值。

指标不等价。小面积 CV 不保证最小分离角很大,也不保证低球冠偏差。覆盖半径和球冠偏差取有限测试集合的最大值,均低估或等于真实值;由覆盖估计得到的网格比同样是下界估计。低于 1 的估计不代表真实网格比小于 1。全点对指标仍受浮点精度影响。

算法说明、复杂度与指标定义
算法本页实现与限制主要计算量
Fibonacciz 等距、黄金角递增,任意 N;生成动画逐批显示完整 N 点序列的前缀,前缀可能不均匀。O(N)
随机球面z 均匀于 [−1,1],方位角均匀于 [0,2π),独立等面积采样;可能局部聚集。O(N)
二十面体细分三角形各边中点归一化至球面,递归四分;N = 10·4ˡ + 2。选用离目标最近的 12 / 42 / 162 / 642 点,动画按细分层显示。O(N)
Poisson Disk球面随机投点、按最小角距离拒绝;初始阈值 0.8√(4π/N)。连续失败后阈值乘 0.92,直到凑齐 N。保留最终阈值下的分离约束;不是固定半径最大化或严格蓝噪声谱保证。依赖拒绝次数,通常比 O(N²) 更慢
Lloyd / CVT固定 8,192 个独立旋转的积分探针,将每个单元的欧氏质心归一化,迭代优化平方弦长量化误差。是离散近似 CVT,不是精确测地质心,也不强制等面积。每轮 O(8,192·N)
Riesz / ThomsonE = Σᵢ<ⱼ ‖xᵢ−xⱼ‖⁻ˢ;球面切空间负梯度、归一化回球面、回溯线搜索。s=1 为 Thomson。只追求局部降低能量,不保证全局最优。每轮 O(N²),含线搜索

球冠偏差定义:D = sup |点落入球冠的比例 − 球冠面积/(4π)|。每个测试轴将 tᵢ=(1−u·xᵢ)/2 排序,检查 max((i+1)/N−tᵢ, tᵢ−i/N),覆盖该轴的全部半径和阈值两侧极限。测试 128 个固定轴仅给全局下界。面积与覆盖探针固定,不随镜头或动画改变;Lloyd 优化探针和评价探针采用不同旋转。

最近邻 CV = std(dᵢ)/mean(dᵢ),dᵢ = minⱼ≠ᵢ acos(xᵢ·xⱼ)。δ = min dᵢ;h = maxₓ minᵢ acos(x·xᵢ);ρ = h/(δ/2)。距离 CV、面积 CV 和偏差通常希望较小;固定 N 时 δ 希望较大、h 较小,但不存在对所有目标均最优的算法。

性能设置:最多 1,024 点、100 轮。数值计算在本地 Worker 中进行;高探针数和大点集会增加等待时间。速度控制计算帧推进与过渡时长;后台预备一帧,不能保证计算跟得上目标速率。暂停会阻止发起下一帧,已在计算的一帧会缓存而不前进。时间线仅可回看已计算帧。

参考:Womersley:球面点集指标 · Burkardt:球面近似 CVT · 球面 CVT 算法论文