reducepatch function with stl file

7 vues (au cours des 30 derniers jours)
nourdine ouzoubair
nourdine ouzoubair le 28 Juil 2016
Modifié(e) : DGM le 16 Juil 2025
How can I use reducepatch function with stl file?? Thank you

Réponses (1)

Rahul
Rahul le 4 Juin 2025
In order to use 'reducepatch' function with an stl file, consider the following steps:
  • Read the stl file using 'stlread' function.
  • You would obtain a Triagulation object which would contain 'ConnectivityList' and 'Points'
  • Either construct a struct with properties 'faces', 'vertices', where 'faces' would crrespond to 'ConnectivityList' and 'vertices' would correspond to 'Points' of the Triangulation object.
  • You can also consider creating a 'patch' object with the 'ConnectivityList' and 'Points' as 'Faces' and 'Vertices'.
  • This struct or 'patch' object created can be passed to the 'reducepatch' function with appropriate arguments.
The following MathWorks documentations can be referred:
Thanks.
  1 commentaire
DGM
DGM le 16 Juil 2025
Modifié(e) : DGM le 16 Juil 2025
How about an example?
unzip sphere_200.stl.zip % for the forum
% read the file
T = stlread('sphere_200.stl'); % triangulation object
% convert to an FV struct
FV = t2fv(T);
size(FV.faces,1)
ans = 39996
patch(FV,'facecolor',[0.2 0.8 1],'edgecolor','none');
view(3); view(-30,47); camlight;
axis equal; grid on
% reduce the model to 10% of the facecount
FVr = reducepatch(FV,0.1);
size(FVr.faces,1)
ans = 3998
patch(FVr,'facecolor',[0.2 0.8 1],'edgecolor','none');
view(3); view(-30,47); camlight;
axis equal; grid on
My use of t2fv() here is both a convenience and an anachronism. In 2016, we wouldn't be reading into triangulation objects. The first-party stlread() didn't exist until late 2018. The available third party decoders would have been returning data as an FV struct, separate F,V lists, or other less useful formats. As a consequence, we would likely need to do nothing extra to obtain the FV struct.

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by