Extracting information from 3D model - .stl file management on matlab

조회 수: 13 (최근 30일)
Hi everyone
I started reading a .stl file, I alredy know how to calculate volumen and superficial area from it, but I need to extract even more info, cause it will be input data for a convutional NN. So, I need to extract data as, minimun distance between surfaces, minimum radius, maximum distance between surfaces, and so on. To do so, I used triangulation, and with some features, I was able to obtain the normal vector of the surfaces, also the X,Y,Z coordinates fo the center of each triangle, I thought that I will be able to find the minimun distance and maximum, using norm(b-a), to find all distances between trangle centers, but did not came out I as expected. This is the code that I made for this. I will appreciate any help or idea to achieve this goal, thanks
TR = triangulation(fv.ConnectivityList,fv.Points)
E = edges(TR)
startVert = TR.Points(1,:);
endVert = TR.Points([2 3 5],:);
F = faceNormal(TR)
P = incenter(TR)
for i = 1:size(P,1);
a = P(i,:);
b = P((i+1),:);
d = norm(b-a);
dis(i) = d;
dis;
end
Min_dis = min(dis);
Min_dis
  댓글 수: 2
darova
darova 2021년 5월 25일
Can you show the geometry?
Juan Pablo Guamn Bernal
Juan Pablo Guamn Bernal 2021년 5월 25일
편집: darova 2021년 5월 26일
Yes, this is an image of the part, but I will need to do the same process with random geometries.

댓글을 달려면 로그인하십시오.

채택된 답변

darova
darova 2021년 5월 26일
Try this link: Surface Curvature
Can you just analyze edge length to find minimum/maximum distances?

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 STL (STereoLithography)에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by