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?
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:
Am I doing something wrong here?