A 3D alphashape is a volume, therefore its triangulation is made of tetrahedrons not triangles. stlwrite only supports triangulations made of triangles, i.e. surfaces triangulations in 2D or 3D, not volumes triangulations. I don't know enough about the stl format to tell if it's a restriction of matlab or a restriction of the format itself. But, as it is now, it is impossible to write an alpha shape triangulation to an stl file with stlwrite. There may be some stlwiters on the FileExchange that may work (I haven't looked). Alternatively, you may just want to write the surface of your alpha shape. You can get the triangles making that surface with boundaryFacets. Maybe that's what you're after, in which case: shp = alphaShape(app.Schunk.getVolCoordinates(), 100000);
[bf, P] = boundaryFacets(shp);
stlwrite(triangulation(bf, P), 'STLfileFromApp.stl');
Best Answer