Skip to content

A tool that using Sqrt3 and Catmull Clark subdivision algorithms, it also can convert triangle meshes to quad meshes.

Notifications You must be signed in to change notification settings

bachns/Mesh-Smoothing

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CatmullClark-Sqrt3-Subdivision

You can find the converted & smoothed meshes in "result.off" file.

Also you can use this project for converting triangulated meshes to quadrated mesh by calling mesh->convertQuadbySplit() method after loading the quad mesh.

Catmull Clark Algorithm

To use it, load mesh with correct method ( use mesh->loadOffTriMesh("mesh.off") for triangulated meshes and use mesh->loadOffQuadMesh("mesh.off") for quad meshes)

If you loaded a triangulated mesh, call the mesh->convertQuadbySplit() method to continue.

Then use mesh->CatmullClarkSubdiv() for Catmull Clark algorithm. Each call corresponds one iteration.

Note: convertQuadbySplit() uses Catmull-Clark split method.

Here are some example results:

Cube:

Cube w/triangles converted to quads by split

### Man

Sqrt3 Subdivision Algorithm

To use it, load mesh with correct method ( use mesh->loadOffTriMesh("mesh.off") because this algorithm only works for triangulated meshes and I dont provide any conversion from quads to triangles right now)

Then use mesh->Sqrt3SubDiv for Sqrt3 Subdivision algorithm. Each call corresponds one iteration.

Here are some example results:

Coffee Cup

Horse

About

A tool that using Sqrt3 and Catmull Clark subdivision algorithms, it also can convert triangle meshes to quad meshes.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 100.0%