Main Content

使用等值面连接相等的值

液体流数据中的等值面

可以使用 isosurfacepatch 命令创建等值面。

本示例在 flow 生成的三维体内创建等值面。使用以下命令生成三维体数据:

[x,y,z,v] = flow;

要选择等值,请确定三维体数据中值的范围。

min(v(:))
ans =
   -11.5417
max(v(:))
ans =
   2.4832

通过研究,您可以选择能够揭示有用数据信息的等值。选择等值后,使用它们创建等值面:

  • 使用 isosurface 生成可直接传递给 patch 的数据。

  • 根据三维体数据的梯度重新计算曲面法线,以产生更好的光照特性 (isonormals)。

  • 将补片的 FaceColor 设置为红色并将 EdgeColor 设置为 none,以生成平滑、明亮的曲面。

  • 调整视图并添加光照(daspectviewcamlightlighting)。

    hpatch = patch(isosurface(x,y,z,v,0));
    isonormals(x,y,z,v,hpatch)
    hpatch.FaceColor = 'red';
    hpatch.EdgeColor = 'none';
    daspect([1,4,4])
    view([-65,20])
    axis tight
    camlight left; 
    lighting gouraud