基于符号距离场 (Signed Distance Field, SDF) 的高精度三角网格体素化器。

相比 Voxelizer 的列扫描射线投射算法 (仅做布尔内外判定、边界呈 明显阶梯伪影),本模块为 CFD 高精度仿真提供更精细的体素化结果:

算法概述

  1. 精确 SDF:对每个采样点,通过 BVH 查询到网格的最近三角面 及最近点,得到无符号欧几里得距离 d;再用最近三角面法向判定内外符号 (Baerentzen & Aanaes, 2002):若 (p - closest) · n < 0 则点在内部, SDF = -d,否则 SDF = +d。
  2. BVH 加速:以三角形包围盒层次结构将 "每采样点找最近三角形" 从 O(采样数 × 三角形数) 降至近似 O(采样数 × log 三角形数)。
  3. 亚体素抗锯齿:每个体素内按 N×N×N 子网格采样 SDF 符号,统计固体子点 占比作为分数占用率 (occupancy),显著平滑表面、消除阶梯伪影。

输出

前提条件

符号判定依赖最近三角面法向,因此要求输入网格尽量水密 (watertight) 且法向定向一致; 对薄壁 / 非流形 / 破洞模型,内外符号可能局部出错,建议预先修复模型。