High Speed Quadric Mesh Simplification with Source Code


#1

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:

[ul]
[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
[/li][/ul]

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).


#2

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

Thanks,
Tang Laoya


#3

The page he linked has a straight download link to the source and data:
http://raycast.org/data/QuadricMesh_Simplification.zip

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


#4

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?

Thanks,
Tang Laoya