mirror of https://github.com/CGAL/cgal
81 lines
3.2 KiB
TeX
81 lines
3.2 KiB
TeX
%Subdivision surfaces \cite{cc,ds,loop,sqrt3,qts}
|
|
%are the limit surface resulting from the
|
|
%application of a subdivision algorithm to a control mesh.
|
|
%Subdivision algorithms recursively \emph{refine} (subdivide) the
|
|
%control mesh and \emph{modify} (smooth) the geometry according
|
|
%to a stencil on the source mesh.
|
|
%Further details on subdivisions can be found at \cite{Sub:course:2000}
|
|
%and \cite{Warren:subdivision}. The OpenMesh library has
|
|
%supports of Loop and $\sqrt{3}$ subdivisions \cite{Abhijit:2004:APISUB}.
|
|
|
|
Subdivision algorithms \cite{Warren:subdivision, Sub:course:2000}
|
|
contain two major steps: \emph{\tr} and \emph{\gm}.
|
|
The \tr\ reparameterizes the control mesh into a refined
|
|
mesh. The \gm\ transforms a submesh on the control mesh
|
|
to a vertex on the refined mesh. The submesh (with
|
|
the normalized weights) is called the
|
|
\emph{stencil}. A subdivision algorithm recursively
|
|
applies these two steps on the control mesh and generate
|
|
the limit surfaces.
|
|
%A proper combination of a \tr\ and a set of
|
|
%rules of \gm\ define a valid subdivision scheme.
|
|
|
|
The local configurartions of refinements employed in subdivision
|
|
algoruthms are shown in Fig.\ref{fig:RefSchemes}, including Catmull-Clark
|
|
subdivision (PQQ) \cite{cc}, Loop subdivision (PTQ) \cite{loop},
|
|
Doo-Sabin subdivision (DQQ) \cite{ds} and $\sqrt{3}$ subdivision
|
|
\cite{sqrt3}. Subdivisions, such as Quad-Triangle subdivision
|
|
\cite{qts,l-pg-03}, may employ a hybrid refinement consisting
|
|
of two different refinements.
|
|
\begin{figure}[htb]
|
|
\centering
|
|
\psfrag{PQQ}[]{\scriptsize PQQ}
|
|
\psfrag{PTQ}[]{\scriptsize PTQ}
|
|
\psfrag{DQQ}[]{\scriptsize DQQ}
|
|
\psfrag{Sqrt3}[]{\scriptsize $\sqrt{3}$}
|
|
\epsfig{file=figs/RefSchemes.eps, width=7cm}
|
|
\caption{Examples of refinement schemes:
|
|
primal quadrilateral quadrisection (PQQ),
|
|
primal triangle quadrisection (PTQ),
|
|
dual quadrilateral quadrisection (DQQ) and
|
|
$\sqrt{3}$ triangulation.}
|
|
\label{fig:RefSchemes}
|
|
\end{figure}
|
|
The \gm\ multiplies the stencils and
|
|
results the vertices on the refined mesh.
|
|
Examples of the correspondence between a stencil and its
|
|
vertex are shown in Fig.\ref{fig:RefMap}, where
|
|
Catmull-Clark subdivision has three distinct stencils
|
|
and Doo-Sabin subdivision has only one stencil.
|
|
\begin{figure}
|
|
\centering
|
|
\psfrag{A}[]{(a)}
|
|
\psfrag{B}[]{(b)}
|
|
\psfrag{C}[]{(c)}
|
|
\psfrag{D}[]{(d)}
|
|
\epsfig{file=figs/RefMap.eps, width=7cm}
|
|
\caption{The stencil (weights are not shown) and its
|
|
vertex in the Catmull-Clark subdivision (a-c)
|
|
and Doo-Sabin subdivision (d). Catmull-Clark
|
|
subdivision has three stencils: facet-stencil (a),
|
|
edge-stencil (b) and vertex-stencil (c).
|
|
Doo-Sabin subdivision has only corner-stencil (d).}
|
|
\label{fig:RefMap}
|
|
\end{figure}
|
|
|
|
|
|
% templated rules: a generic framework for subdivisions
|
|
\subsubsection{Generic Subdivision Solution}
|
|
%\label{sec:subtempl}
|
|
\input subtempl
|
|
|
|
\subsubsection{Sqrt 3}
|
|
% connectivity ops: specific polyhedron algorithms (sqrt3 subdivisions)
|
|
%\subsection{$\sqrt{3}$-Subdivision using Euler Operators}
|
|
\input sqrt3
|
|
|
|
% inc builder: specific polyhedron algorithms (qt subdivisions)
|
|
%\subsection{Quad-triangle Subdivision using modifier}
|
|
%\input qt
|
|
|