3D Coordinates to Mesh with Vertices and Faces
Show older comments
Hello. I have a set of 3D points in an multidimensional array (XYZ) which need to be converted into some kind of mesh (ideally with vertices and faces), which can then be converted into a binary volume.
What is the best way to go about this? Any suggestions or examples would be great, thanks.
2 Comments
KSSV
on 9 Jun 2017
How your XYZ data is? Gridded or scattered? Solutions depends on that.
Jason Bond
on 9 Jun 2017
Answers (2)
That case you have to look into delaunay and griddata
% some random data
N=20;
x=rand(N,1) ;
y=rand(N,1) ;
z=rand(N,1) ;
tri=delaunay(x,y);
trisurf(tri,x,y,z);
3 Comments
Jason Bond
on 9 Jun 2017
KSSV
on 9 Jun 2017
I suggest you to use this package: https://in.mathworks.com/matlabcentral/fileexchange/25555-mesh2d-delaunay-based-unstructured-mesh-generation
Pavel Onishchenko
on 28 Oct 2020
try this:
shp = alphaShape(points(:,1),points(:,2),points(:,3));
where points is Nx3 xyz matrix.
also you can get elements and nodes matrixes via
[elements,nodes] = boundaryFacets(shp);
lokesh kumar
on 25 Aug 2019
0 votes
i HAVE THE TRAINGULATED DATA, How to plot into surf
Categories
Find more on Surface and Mesh Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!