stl to point cloud

37 次查看(过去 30 天)
shmulik e
shmulik e 2020-4-10
Hello
I have a STL file that i am tryongto convert to points clouid, or just the points cloud of the shell of the STL.
I tried differenf types of of STL reader function, but they all provide just the trigulation of the object wich includes faces and vertices, like the 'STL File Reader':
The STL file was saved from SolidWorks by me, so i can save it in adifferent format if nedded.
Thank you for the help.

回答(1 个)

Ameer Hamza
Ameer Hamza 2020-4-10
Use the stlread: https://www.mathworks.com/help/releases/R2020a/matlab/ref/stlread.html function provided in MATLAB from R2018b. To get the point cloud
stlData = stlread('stl_filename');
points = stlData.Points;
  2 个评论
shmulik e
shmulik e 2020-4-10
编辑:shmulik e 2020-4-10
This gives me only the points of the triangles. If there is a big face than they are very few points on that face, only the triangles points.
I want to have a shell of voulme point cloud which represent the STL and a I can control the density of the points.
for exmaple if i have a stl file of a cube, the TOP figure is what i will get from:
points = stlData.Points;
and the bottom two is what is want to have (either one of them, they generated just for an example)
Ameer Hamza
Ameer Hamza 2020-4-10
shmulik, This shows that the model saved in the STL file by SolidWorks just contains a few points. Is it possible to increase the use number of points in SolidWorks by using a finer mesh? Also run the following code to see if the points imported by MATLAB is same as the SolidWorks' model
stlData = stlread('filename.stl');
patchStruct.Vertices = stlData.Points;
patchStruct.Faces = stlData.ConnectivityList;
patchStruct.FaceColor = 'r';
patch(patchStruct)
view(3)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Point Cloud Processing 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by