English
 
Help Privacy Policy Disclaimer
  Advanced SearchBrowse

Item

ITEM ACTIONSEXPORT

Released

Journal Article

On the Design of CGAL, a computational geometry algorithms library

MPS-Authors
/persons/resource/persons44397

Fabri,  Andreas
Algorithms and Complexity, MPI for Informatics, Max Planck Society;

/persons/resource/persons44766

Kettner,  Lutz
Algorithms and Complexity, MPI for Informatics, Max Planck Society;

/persons/resource/persons45391

Schirra,  Stefan
Algorithms and Complexity, MPI for Informatics, Max Planck Society;

External Resource
No external resources are shared
Fulltext (restricted access)
There are currently no full texts shared for your IP range.
Fulltext (public)
There are no public fulltexts stored in PuRe
Supplementary Material (public)
There is no public supplementary material available
Citation

Fabri, A., Giezeman, G.-J., Kettner, L., Schirra, S., & Schönherr, S. (2000). On the Design of CGAL, a computational geometry algorithms library. Software - Practice and Experience, 30(11), 1167-1202. Retrieved from http://www3.interscience.wiley.com/cgi-bin/abstract/72517074/START.


Cite as: https://hdl.handle.net/11858/00-001M-0000-000F-33E0-2
Abstract
CGAL is a {\em Computational Geometry Algorithms Library\/} written in C{\tt ++}, which is being developed by research groups in Europe and Israel. The goal is to make the large body of geometric algorithms developed in the field of computational geometry available for industrial application. We discuss the major design goals for CGAL, which are correctness, flexibility, ease-of-use, efficiency, and robustness, and present our approach to reach these goals. Generic programming using templates in C{\tt ++} plays a central role in the architecture of \cgal. We give a short introduction to generic programming in C{\tt ++}, compare it to the object-oriented programming paradigm, and present examples where both paradigms are used effectively in CGAL. Moreover, we give an overview of the current structure of the CGAL-library and consider software engineering aspects in the CGAL-project.