如何栅格化一个3d网格



我有一个3d网格(一组三角形),它定义了一个封闭的水密表面。我想栅格化这个网格,也就是将网格占用的空间划分为均匀的小立方体(3d相当于2d像素),并将三角形穿过的立方体涂成黑色,其余的涂成白色。类似于如何将2d矢量图形图像光栅化为光栅化的bmp。换句话说,我想输出一个3d数组,AM x M x M,如果有一个三角形穿过立方体占据的空间在位置i,j,k,那么A(i,j,k)是1。

请告诉我,我将澄清。

任何算法,库,matlab例程都可以。

我不能给你一些算法或库,但一个小提示。您要查找的术语是体素化。试试谷歌,它可能会为你提供一些关于这方面的资源,以及这个小而又相当古老的主题介绍,这可能是进一步研究的基础。

我发现这个voxelizer非常适合我的需要。它的工作速度相当快,并且还有一个matlab脚本用于将生成的体素文件读取到matlab.

相关内容

  • 没有找到相关文章

最新更新