High Speed Quadric Mesh Simplification with Source Code


The method here is faster than most other free source codes available on the internet. It is about 4x faster than Meshlab, which is already fast. Using multi-core programming, it could even be faster.

It has the following features:

[li]Threshold based, therefore faster than sorting based methods
[/li][li]Since the Quadric Matrices are symmetric, only 10 elements are stored & computed per Matrix
[/li][li]Non-closed meshes are supported by extra treating mesh borders
[/li][li]Simplifies 2.000.000 triangles to 20.000 triangles in 3 seconds on a Core i7
[/li][li]MIT License

The code is short and easy to use in case you need to adopt it to your project. You can fetch the C++ Project with source here: (about 300 lines for the main part, contained in Simplify.h )

Download Source and Data

Here a comparison: Program output (left) and Meshlab (right).


Thank you for providing the program.
However, it can’t be downloaded, could you please attach it here?

Tang Laoya


The page he linked has a straight download link to the source and data:

Works just fine from there.
This is the programing forum, I don’t think you can ask for more than the source :wink:


Thank you very much for your kindly reply. I have downloaded the file and have a quick test. I noticed that there are executable files and I run the file .\bin64\PolygonSimplification.exe by double click it. I will load the wall.obj automatically and simplify it. However, it crashed latter. I tested another file but it also failed. Is there anything wrong?

In addition, can the program simplify the surface meshes which form several sub-domains? Currently I put two reverse ordered triangles in the surface which are common boundary of two neighbor sub-domains. Is it correct? If not, how to form the model with multiple sub-domains?

Tang Laoya