Calculation of the surface area of a generic solid
17 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hello, everyone,
I am having problems calculating the surface of a generic 3d solid in stl format. How can I do this? (For the volume I am using these commands:
-mesh = generateMesh(model);
-mv = volume(mesh))
0 Kommentare
Antworten (1)
Matt J
am 16 Jun. 2022
One way might be to read the stl file into a triangulation object using stlread. With the triangulation object, you can use freeBoundary to obtain the surface facets of the mesh. It should then be a simple matter to compute the facet areas and add them up.
7 Kommentare
Matt J
am 16 Jun. 2022
Bearbeitet: Matt J
am 17 Jun. 2022
You could probably vectorize the area calculation as well. For example, if there are N facets and you organize the triangle vertices into three 3xN arrays A,B,C the total area could be computed with,
Area=sum( vecnorm( cross(B-A,C-A) ,2,1) )/2;
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!