mirror of https://github.com/CGAL/cgal
110 lines
5.0 KiB
TeX
110 lines
5.0 KiB
TeX
\lcTex{\section*{Preface}}
|
|
\lcHtml{\section{Preface}}
|
|
|
|
\cgal\ is a {\em Computational Geometry Algorithms Library} written in \CC,
|
|
developed by a consortium consisting of
|
|
\ccAnchor{http://www.inf.ethz.ch/}{ETH Z\"urich} (Switzerland),
|
|
\ccAnchor{http://www.inf.fu-berlin.de/}{Freie Universit{\"a}t Berlin} (Germany),
|
|
\ccAnchor{http://www-sop.inria.fr/}{{\sc Inria} Sophia-Antipolis} (France),
|
|
\ccAnchor{http://www.informatik.uni-halle.de/}{Martin-Luther-Universit{\"a}t
|
|
Halle-Wittenberg} (Germany),
|
|
\ccAnchor{http://www.mpi-sb.mpg.de/}{Max-Planck Institut f{\"u}r Informatik},
|
|
Saarbr\"ucken (Germany),
|
|
\ccAnchor{http://info.risc.uni-linz.ac.at/}{{\sc Risc}} Linz (Austria)
|
|
\ccAnchor{http://www.math.tau.ac.il/}{Tel-Aviv University} (Israel), and
|
|
\ccAnchor{http://www.cs.uu.nl/}{Utrecht University} (The Netherlands).
|
|
You can find more information on the project on the
|
|
\ccAnchor{http://www.cgal.org/}{\cgal\ home page}
|
|
\ccTexHtml{at URL {\tt http://www.cgal.org}}{}.
|
|
|
|
Should you have any questions, comments, remarks or criticism concerning
|
|
\cgal, please see the user support information web page on our web site.
|
|
|
|
\subsection*{Editorial Committee}
|
|
|
|
Andreas Fabri ({\sc Geometry Factory}) \\
|
|
Bernd G\"artner (ETH Z\"urich) \\
|
|
Efi Fogel (Tel-Aviv University) \\
|
|
Michael Hoffmann (ETH Z\"urich) \\
|
|
Lutz Kettner (\ccHtmlNoLinksFrom{Max-Planck Institut f\"ur Informatik})\\
|
|
Sylvain Pion ({\sc Inria} Sophia-Antipolis)\\
|
|
Monique Teillaud ({\sc Inria} Sophia-Antipolis)\\
|
|
Remco Veltkamp (Utrecht University)\\
|
|
Ron Wein (Tel-Aviv University)\\
|
|
Mariette Yvinec ({\sc Inria} Sophia-Antipolis)\\
|
|
|
|
|
|
\subsection*{Authors}
|
|
|
|
Herv\'e Br\"onnimann ({\sc Inria} Sophia-Antipolis). \\
|
|
Andreas Fabri ({\sc Inria} Sophia-Antipolis).\\
|
|
Geert-Jan Giezeman (Utrecht University).\\
|
|
Philippe Guigue ({\sc Inria} Sophia-Antipolis).\\
|
|
Susan Hert (\ccHtmlNoLinksFrom{Max-Planck Institut f\"ur Informatik}).\\
|
|
Michael Hoffmann (ETH Z\"urich).\\
|
|
Lutz Kettner (ETH Z\"urich).\\
|
|
Sylvain Pion ({\sc Inria} Sophia-Antipolis). \\
|
|
Stefan Schirra (\ccHtmlNoLinksFrom{Max-Planck Institut f\"ur Informatik}).\\
|
|
Sven Sch\"onherr (Freie Universit{\"a}t Berlin).
|
|
|
|
\subsection*{Design and Implementation History}
|
|
|
|
At a meeting at Utrecht University in January 1995,
|
|
Olivier Devillers, Andreas Fabri, Wolfgang Freiseisen,
|
|
Geert-Jan Giezeman, Mark Overmars, Stefan Schirra, Otfried Schwarzkopf
|
|
(now Otfried Cheong), and Sven Sch\"onherr
|
|
discussed the foundations of the \cgal\ kernel.
|
|
Many design and software engineering issues were addressed,
|
|
e.g.\ naming conventions, coupling of classes
|
|
(flat versus deep class hierarchy),
|
|
memory allocation, programming conventions, mutability of
|
|
atomic objects, points and vectors, storing additional information,
|
|
orthogonality of operations on the kernel objects,
|
|
viewing non-constant-size objects like polygons as
|
|
dynamic data structures (and hence not as part of the (innermost) kernel).
|
|
|
|
The people attending the meeting delegated the compilation of
|
|
a draft specification to Stefan Schirra.
|
|
The resulting draft specification was intentionally modeled on \cgal's
|
|
precursors \protocgal\ and \plageo\ as well as on the geometric part of \leda.
|
|
The specification already featured coexistence of
|
|
\ccHtmlNoLinksFrom{Cartesian} and
|
|
homogeneous representation of point/vector data and parameterization
|
|
by number type(s).
|
|
During the discussion of the draft a kernel design group was formed.
|
|
The members of this group were Andreas Fabri, Geert-Jan Giezeman,
|
|
Lutz Kettner, Stefan Schirra, and Sven Sch\"onherr.
|
|
The work of the kernel design group led to significant changes and
|
|
improvements of the original design, e.g.\ the strong separation between
|
|
points and vectors. Probably the most important enhancement was the design
|
|
of a common superstructure for the previously uncoupled
|
|
\ccHtmlNoLinksFrom{Cartesian} and
|
|
homogeneous representations. One can say, that the kernel was designed
|
|
by this group.
|
|
The kernel was later revised based on suggestions by Herv\'e Br\"onnimann,
|
|
Bernd G\"artner, Michael Hoffmann, and Lutz Kettner.
|
|
|
|
A first version of the kernel was internally made available at the beginning
|
|
of the \cgal-project ({\sc esprit ltr iv} project number 21957).
|
|
Since then many more people contributed to the evolution of the kernel
|
|
through discussions on the \cgal\ mailing lists.
|
|
The implementation based on
|
|
\ccHtmlNoLinksFrom{Cartesian} representation was (initially) provided
|
|
by Andreas Fabri, the homogeneous representation (initially) by Stefan Schirra.
|
|
Intersection and distance computations were implemented by Geert-Jan Giezeman.
|
|
Further work has been done by Susan Hert on the overall maintenance of the
|
|
kernel.
|
|
Philippe Guigue has provided efficient intersection tests for 3D triangles.
|
|
Andreas Fabri, Michael Hoffmann and Sylvain Pion have improved the support for
|
|
the extensibility and adaptability of the kernel.
|
|
The kernel is now maintained by Sylvain Pion.
|
|
|
|
\subsection*{Acknowledgment}
|
|
|
|
This work was supported
|
|
by the Graduiertenkolleg `Algorithmische Diskrete Mathematik',
|
|
under grant DFG We 1265/2-1,
|
|
and by ESPRIT IV Long Term Research Projects No.~21957 (CGAL)
|
|
and No.~28155 (GALIA).
|
|
|