Commonly used subdivision schemes require manifold control meshes and produce surfaces which are manifolds, that is, each point on the surface has a neighborhood which is a continuous one to one deformation of a disk. However, it is often necessary to model nonmanifold surfaces: for example, several surface sheets meeting at a common boundary.
In this paper we describe a subdivision algorithm that makes it possible to model nonmanifold surfaces. Any triangle mesh, subject to the only restriction that no two vertices of any triangle coincide, can serve as an input to the algorithm. Resulting surfaces consist of collections of manifold patches joined along nonmanifold curves and vertices; if desired, constraints can be imposed on the tangent planes of manifold patches sharing a curve or a vertex.
The algorithm is an extension of a well-known Loop subdivision scheme, and uses techniques developed for piecewise linear surfaces.
Compressed Postscript (6.9MB)