How do I compute the surface & volume of a large amount of STL files?

Please, how do I compute the surface & volume of a large amount of STL files ?

I have over 3000 STL files, and I want to know their respective volumes and surfaces. I will use this data to be able to identify the biggest part, the one with the biggest surface, etc.

I found that the fine Admesh (included in openscad, as far as I know) software that can compute the volume via command-line (powershell) and with some text editing I can get the volumes for all of these parts (needing some patience), but I didn't find any similar tool for the surface.

The best tool would output such thing as:

input.stl - 75.554mm2 - 45.547mm3

I'm not sure this post is adequate in here, but anyway, thanks.

• Depending on how comfortable you are with programming, calculating the surface is pretty easy. Simply sum the area of all the triangles in the file. Commented Apr 23, 2018 at 13:41
• Well, the fact is that I am not comfortable with programming. I am learning a lot in computer science in general, but my programming skills are limited to (very) simple scripts like \$ cp -r \some\folder \some\destination\ ; shutdown. Not that I wouldn't like to learn about, but I don't really have the time… yet, at least. Commented Apr 24, 2018 at 8:12
• if you can find the weight (aka filament use estimate) and the volume, can you computer surface? idk Commented Apr 28, 2018 at 10:25
• @dandavis I don't understand what do you mean. I am searching for the surface of the parts, which is independent from the volume (volume and weight being proportionals, tighten by density). i.e.: these parts have a much higher surface over volume ratio than this one. Commented May 11, 2018 at 12:41
• admesh -c will give you a summary that includes volume, you colud grep for the line/value after "volume : " Commented Jun 26, 2018 at 0:09

You could use the Python console of FreeCAD. Issuing the following commands

FreeCAD.ActiveDocument.ActiveObject.Shape.Area