用delaunay函数进行三维Delaunay剖分。用tetramesh函数绘delaunay函数输出数据的图形。该函数用网格显示T定义的四面体。它使用默认的tranparency参数值'FaceAlpha'=0.9,近于透明。
下面的例子进行3维Delaunay剖分,然后用tetramesh函数绘制组成对应单形体的四面体。camorbit函数旋转相机位置。
code.matlab
>> d=[-1 1];
>> [x,y,z]=meshgrid(d,d,d); % 一个立方体
>> x=[x(:);0];
>> y=[y(:);0];
>> z=[z(:);0];
>> Tes=delaunay(x,y,z)
Tes =
9 1 5 6
3 9 1 5
2 9 1 6
2 3 9 4
2 3 9 1
7 9 5 6
7 3 9 5
8 7 9 6
8 2 9 6
8 2 9 4
8 3 9 4
8 7 3 9
>> X=[x(:) y(:) z(:)];
>> tetramesh(Tes,X);camorbit(20,0)
生成图3-5。
图3-5 立方体的3维Delaunay剖分