我正在使用这个 marching cube 算法绘制3D等值面(移植到C#,输出
有什么方法可以加速 marching cubes 算法吗?最明显的方法是简单地减少空间采样率,但这会降低生成网格的质量。我想避免这种情况。
我正在考虑一个两步系统,第一步对空间进行更粗略的采样,消除场强明显低于我的等值线的体积。这样做明智吗?有哪些风险?
编辑:代码已经进行了分析,大部分 CPU 时间都分配在 marching cubes 程序本身和每个网格单元角的场强计算上。场强计算超出了我的控制范围,因此加速立方体程序是我的唯一选择...
我仍然倾向于尝试消除死空间,因为这将显著减少对两个系统的调用次数。
MeshGeometry3D
,但其他方面相同)。生成的表面看起来很好,但计算时间很长。有什么方法可以加速 marching cubes 算法吗?最明显的方法是简单地减少空间采样率,但这会降低生成网格的质量。我想避免这种情况。
我正在考虑一个两步系统,第一步对空间进行更粗略的采样,消除场强明显低于我的等值线的体积。这样做明智吗?有哪些风险?
编辑:代码已经进行了分析,大部分 CPU 时间都分配在 marching cubes 程序本身和每个网格单元角的场强计算上。场强计算超出了我的控制范围,因此加速立方体程序是我的唯一选择...
我仍然倾向于尝试消除死空间,因为这将显著减少对两个系统的调用次数。