cgal/Packages/Tutorial/tutorial/Polyhedron/sgp2004/paper/paper.tex

209 lines
7.2 KiB
TeX

%\documentclass[letter,twoside,10pt]{article}
%\usepackage{tutorial}
%\usepackage[OT1]{fontenc}
\documentclass{egpubl}
\usepackage{SGP2004}
% --- for Annual CONFERENCE
% \ConferenceSubmission % uncomment for Conference submission
% \ConferencePaper % uncomment for (final) Conference Paper
% \STAR % uncomment for STAR contribution
% \Tutorial % uncomment for Tutorial contribution
% \ShortPresentation % uncomment for (final) Short Conference Presentation
%
% --- for CGF Journal
% \JournalSubmission % uncomment for submission to Computer Graphics Forum
% \JournalPaper % uncomment for final version of Journal Paper
%
% --- for EG Workshop Proceedings
\WsSubmission % uncomment for submission to EG Workshop
% \WsPaper % uncomment for final version of EG Workshop contribution
%
\electronicVersion % uncomment if producing the printed version
% ------------------------------------------------------------------------
\ifpdf \usepackage[pdftex]{graphicx} \pdfcompresslevel=9
\else \usepackage[dvips]{graphicx} \fi
%\usepackage{graphicx}
\usepackage{subfigure}
\usepackage{epsfig}
\usepackage{psfrag}
\usepackage{}
% used to write c++ code/algorithms
\usepackage{listings}
\usepackage{fancyvrb}
\PrintedOrElectronic
% prepare for electronic version of your document
\usepackage{t1enc,dfadobe}
%\psdraft
% hyperref stuff
\usepackage{hyperref}
\hypersetup{
pdftitle={Getting started with CGAL Polyhedron},
pdfauthor={INRIA Geometrica},
pdfsubject={A tutorial for CGAL},
pdfkeywords={},
pdfpagemode=UseThumbs,
baseurl={http://www.cgal.org},
colorlinks=true,
linkcolor=black,
anchorcolor=black,
citecolor=black,
filecolor=black,
menucolor=black,
pagecolor=black,
urlcolor=blue,
bookmarksopen=false,}
% end hyperref stuff
\lstset{language=C++, basicstyle=\scriptsize}
\input{paper.def}
% TITLE
% ------------------------------------------------------------------------
\title{Generic Subdivision Algorithms on Meshes \\
based on the CGAL Polyhedron}
% pierre: other suggestion for the title?
% Generic Algorithms on Meshes
% based on the CGAL Polyhedron
% for anonymous conference submission please enter your SUBMISSION ID
% instead of the author's name (and leave the affiliation blank) !!
% we should submit with N.N.
\author[Le-Jeng Shiue, Pierre Alliez, Radu Ursu, and Lutz Kettner]
{Le-Jeng Shiue\thanks{CISE, University of Florida},
Pierre Alliez\thanks{GEOMETRICA, INRIA Sophia-Antipolis},
Radu Ursu\thanks{GEOMETRICA, INRIA Sophia-Antipolis}, and
Lutz Kettner\thanks{MPII, Saarbr\"ucken}
}
% ------------------------------------------------------------------------
% if the Editors-in-Chief have given you the data, you may uncomment
% the following five lines and insert it here
%
% \volume{23} % the volume in which the issue will be published;
% \issue{2} % the issue number of the publication
% \pStartPage{201} % set starting page
%-------------------------------------------------------------------------
\begin{document}
\maketitle
\begin{abstract}
% pierre: I suggest to keep the abstract without any formatting
% nor macros (ascii only)
The Computational Geometry Algorithms Library CGAL is an efficient
modern C++ library following the generic programming paradigm. It
contains a flexible data structure for meshes in graphics, the
Polyhedron. In generic programming, data structures and algorithms are
decoupled, for example, iterators decouple container classes from
conventional search and sorting algorithms in the C++ Standard
Template Library (STL). We describe two different approaches one can
take with the Polyhedron when implementing subdivision algorithms: An
example implementation of the square-root-of-three subdivision scheme
based on Euler operations provided by the Polyhedron, and an example
implementation of the quad-triangle subdivision based on the modifier
callback mechanism that enables lower-level modifications. Then we
describe a generic framework for subdivision algorithms; its key
feature is the separation of the topological refinement operator from
the geometric smoothing operator. This work is the core part of a
tutorial for the Polyhedron. The tutorial also provides general
amenities for working with meshes in graphics; we offer an interactive
visualizer based on OpenGL, file I/O, and support for getting
illustrations for publications.
% The computational geometry algorithms library (CGAL) adapts
% design patterns and the generic programming paradigm in the design
% and the implementation. The template parameterization
% of the CGAL polyhedron meshes enhances the flexibility and
% the adaptability of supporting geometry algorithms.
% We introduce the modification operations supported
% in the CGAL polyhedron and demonstrate the applications
% of subdivision surfaces. Based on the CGAL polyhedron meshes,
% we also propose a generic framework of the generic polyhedron and
% the soft-coupled geometry algorithms. The soft-coupled algorithms
% are generic and to be specialized as combinations of the
% topology and geometry operators. The geometry operators
% are user-programmable based on the user-specialized CGAL polyhedron.
\begin{classification} % according to http://www.acm.org/class/1998/
\CCScat{I.3.5}{Computer Graphics}{Computational Geometry
and Object Modeling}
\end{classification}
\end{abstract}
%% \noindent {\bf Keywords:}
%% CGAL library,
%% tutorial,
%% halfedge data structure,
%% polygon surface mesh,
%% subdivision surfaces,
%% quad-triangle,
%% $\sqrt{3}$,
%% Loop,
%% Doo-Sabin,
%% Catmull-Clark,
%% OpenGL.
% INTRODUCTION
% ------------------------------------------------------------------------
\section{Introduction}
\input intro
% ------------------------------------------------------------------------
\subsection{Background}
\input prereq
% ------------------------------------------------------------------------
\section{CGAL Polyhedron Meshes}
\input polyhedron
% ------------------------------------------------------------------------
\section{Subdivisions on Generic Mesh Data Structures}
% generic data struture + static algorithms
\input subdivision
% 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
% ------------------------------------------------------------------------
% templated rules: a generic framework for subdivisions
\subsection{Generic Subdivisions}
%\label{sec:subtempl}
\input subtempl
% APPLICATION DEMO
% ------------------------------------------------------------------------
%\section{Application demo}
%\input demo
\section{Conclusions}
\input conclusion
% ------------------------------------------------------------------------
% REFERENCES
\bibliographystyle{eg-alpha}
\bibliography{paper}
\end{document}