【问题标题】:Surface mesh generation in MATLABMATLAB 中的曲面网格生成
【发布时间】:2014-01-05 10:20:49
【问题描述】:

我知道如何在 MATLAB 中使用 PDEtool。但是现在我需要在表面上生成网格。

有人知道我该怎么做吗?在 MATLAB 中是否可以?

【问题讨论】:

    标签: matlab mesh


    【解决方案1】:

    如果您想绘制曲面的网格图并且知道曲面的 {X,Y,Z},则可以在 MATLAB 中使用 mesh 命令创建网格。 例如:

    [X,Y] = meshgrid(-8:.5:8); 
    R = sqrt(X.^2 + Y.^2) + eps;
    Z = sin(R)./R;
    mesh(X,Y,Z,'EdgeColor','black')
    

    如果您想将网格数据用于其他原因,何不试试DistMesh? 它是一个简单的 MATLAB 网格生成器。

    【讨论】:

      【解决方案2】:

      我有一个解决方案,但它是网格功能的组合,我不知道网格的质量有多好。我还需要顶点和面,所以我得到的与使用meshgrid 时得到的有点不同。但是,它仍然是一个网格,不是吗?

      1. 创建表面网格:[FV.faces,FV.vertices] = isosurface(VOLUME);
      2. 根据需要将refinepatch 的面数翻四倍:FV = refinepatch(FV);
      3. 将面/顶点的数量减少到nFV = reducepatch(FV,n);

      我也要去看看iso2mesh

      编辑: 使用来自iso2meshvol2surf,我得到一个形状更规则且偏差更小的网格(我使用plotmesh来自iso2mesh 来比较网格)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-02-10
        • 2015-03-21
        • 1970-01-01
        • 1970-01-01
        • 2012-01-03
        相关资源
        最近更新 更多