Mesh Subdivision Save

A collection of common mesh subdivision algorithms

Project README

mesh-subdivision

A collection of mesh subdivision algorithms.

Algorithms that are currently implemented:

  • Butterfly
  • Catmull-Clark
  • Doo–Sabin
  • Root-3 by Kobbelt
  • Peters-Reif
  • Loop

For now, only OFF mesh format is supported. Mesh examples including letters, numbers and common graphical objects (cube, torus, helix etc) can be found in Meshes folder.

Meshes are represented as a variation of Half-Edge data structure. See Mesh class for details.

Demo application is rather simple: You choose a subdivision algorithm and a mesh to apply it to from a console-based user interface. Most of it is implemented in AlgoRunner class.

Used Open Inventor for visualization of subdivision results, given a mesh object. To use another visualization framework, modify files under Inventor folder (FilledShape and WireframeShape classes), Algorunner and Main.

Example subdivision results for 1, 2 and 3 passes are given below for a closed mesh (X) and an open one (helix). Cyan wireframe is the original mesh.

Doo-Sabin

Alt text Alt text

Catmull-Clark

Alt text Alt text

Loop

Alt text Alt text

Butterfly

Alt text Alt text

Root-3

Alt text Alt text

Peters-Reif

Alt text Alt text

Open Source Agenda is not affiliated with "Mesh Subdivision" Project. README Source: ozkanyumsak/mesh-subdivision

Open Source Agenda Badge

Open Source Agenda Rating