Catmull-Clark subdivision surface

From Wikipedia, the free encyclopedia

First three steps of Catmull-Clark subdivision of a cube with subdivision surface below
First three steps of Catmull-Clark subdivision of a cube with subdivision surface below

The Catmull-Clark algorithm is used in subdivision surface modeling to create smooth surfaces. It was devised by Edwin Catmull (of Pixar) and Jim Clark.

[edit] Procedure

Start with a mesh of an arbitrary polyhedron. All the vertices in the mesh shall be called original points.

  • For each face, add a face point
    • Set each face point to be the average of all original points for the respective face.
    • For each face point, add an edge for every edge of the face, connecting the face point to each edge point for the face.
  • For each edge, add an edge point.
    • Set each edge point to be the average of all neighbouring face points and original points.
  • For each original point P, take the average F of all n face points for faces touching P, and take the average R of all n edge midpoints for edges touching P, where each edge midpoint is the average of its two endpoint vertices. Move each original point to the point
{F + 2R + (n-3)P \over n}.

The new mesh will consist only of quadrilaterals, which won't in general be flat. The new mesh will generally look smoother than the old mesh.

Repeated subdivision results in smoother meshes. It can be shown that the limit surface obtained by this refinement process is at least \mathbb{G}^1 at extraordinary vertices and \mathbb{C}^2 everywhere else.

[edit] Software using Catmull-Clark subdivision surfaces

[edit] External links