Skip to content

Using qmeshcut to compute an isosurface from an arbitrary grid of points #70

@ftadel

Description

@ftadel

Hello,

We have an arbitrary grid of 3D points, one value per point, and would like to use qmeshcut to generate isosurfaces at different levels.
The output surface of qmeshcut can be plotted correctly (although I'm questioning the orientation of the faces).
But it is not considered as a closed mesh, and it can't be repaired with meshcheckrepair.

Here is some example data:
example.zip

And an example script:

load example.mat;
dt = delaunayTriangulation(GridLoc);
[P,v,Faces] = qmeshcut(dt.ConnectivityList, GridLoc, V, 9760);

>> VTA = surfvolume(P, Faces);
Error using surfvolume
open surface is detected, you have to close it first, consider meshcheckrepair() with meshfix option

>> [P, Faces] = meshcheckrepair(P, Faces, 'meshfix')
Fixing asin tolerance to 1.745329e-004 
meshfix C:\Users\franc\AppData\Local\Temp\iso2mesh-Francois\pre_sclean.off 
Cleaning intersections, degeneracies ... 
Saving output mesh to 'C:\Users\franc\AppData\Local\Temp\iso2mesh-Francois\pre_sclean_fixed.off' 

P =
     []

Faces =
     []

Am I doing something wrong here?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions