Search code examples
meshtrimesh

A source of mesh (stl files) for testing a program that extracts properties from 3d solids?


I'm writing a program in Python (using the Trimesh library) which will extract a number of geometric properties from solids which have been given to me as STL files.

I'd like to obtain some sample STL files which I can use for testing my system. I want really simple STL files: For example, if I had an STL file of a cube I could determine if the system is calculating volume correctly. If I had a simple STL for a Klien bottle I could verify that it understands that some objects have no volume but still have surface area.

There are a lot of "open-source" STL files downloadable from ThingVerse, but these files have been optimized for 3d printing, this a printable STL from ThingVerse will have different properties to an ideal version of that object.

I'm after the simple, ideal version. Does anybody know of a collection of such objects that I can use for testing?

If there's no such collection online, then I can probably make these shapes with SketchUp, 3DStudio or some CAD tool, but I was hoping to be able to reuse somebody else's work.


Solution

  • Look at Thingi10K dataset ( https://ten-thousand-models.appspot.com ); it is a large scale 3D dataset created to study the variety, complexity and quality of real-world 3D printing models.

    In a nutshell, Thingi10K contains...

    10,000 models 4,892 tags 2,011 things 1,083 designers 72 categories

    50% non-solid 45% with self-intersections 31% with coplanar self-intersections 26% with multiple components 22% non-manifold 16% with degenerate faces 14% non-PWN 11% topologically open 10% non-oriented

    There is also a simple query interface to search/explore/download the portion dataset based on contextual and geometric criteria (e.g. all the solid, non degenerate models).