Inner edges in alphaShape

2 views (last 30 days)
Jakob
Jakob on 22 Apr 2021
I am working on a scrip where 3D-Objects should be generated from point clouds to later convert them to STL-Files. For the conversion from a point cloud to 3D-object I'm using the alphaShape command. Right now I have difficulties with sharp inner edges of the Objects because alphaShape creates some kind of connection between the surfaces so that there is no right angle possible.
Here is a small example to show you the problem:
[x1,y1,z1] = ndgrid(0:10,0:10,0:20);
[x2,y2,z2] = ndgrid(10:20,0:10,0:10);
P = [x1(:) y1(:) z1(:);
x2(:) y2(:) z2(:)];
shp = alphaShape(P);
plot(shp);
I tried to adjust the alpha value and to create the 3D-body using the boundary-function without getting better results. Is there a way to set some sort of maximum value of a point distance which should be connected by alphaShape? Is there any other way to solve this problem or is it just how alphaShape works?
Thank you for your help!

Answers (0)

Categories

Find more on Bounding Regions 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!