![]()
Précédent : Calcul Géométrique Remonter : Calcul
Géométrique Suivant : Filtres arithmétiques
Participants : Andreas Fabri, Francis Avnaim, Olivier Devillers
Mots-clés : bibliothèque d'algorithmes, algorithme robuste
Sept équipes de recherche fondamentale en géométrie algorithmique se sont réunies pour établir, en collaboration avec des partenaires industriels, une bibliothèque d'algorithmes géométriques baptisée CGAL[21].
Quatre membres de ce consortium (dont le projet PRISME) ont travaillé sur la spécification et l'implantation du noyau de la bibliothèque CGAL. Le noyau de CGALcontient des objets linéaires élémentaires en dimensions deux et trois, et des opérations telles que intersection, calcul de distance, aussi bien que des tests géométriques.
Le noyau est écrit en C++ en utilisant le mécanisme des templates. Cela permet notamment de paramétrer l'arithmétique et de spécialiser les tests géométriques en fonction de l'arithmétique utilisée.
La version la plus récente du noyau est distribuée aux membres du consortium depuis novembre 1996 [47].
Dans le cadre de ce projet européen, le projet PRISMEest coordinateur pour tout ce qui concerne les diagrammes de Voronoï et pour la conception des interfaces graphiques et le débogage graphique. Nous avons travaillé sur la spécification et une première implantation d'algorithmes de calcul de la triangulation de Delaunay et du cloisonnement d'un ensemble de segments. Une attention particulière a été apportée aux cas dégénérés et à leur traitement systématique. Nous avons notamment explicité un schéma de perturbation symbolique en ligne. L'utilisation du calcul exact par cette méthode est plus efficace que celle des autres méthodes génériques de perturbation.
Les interfaces graphiques ne font pas vraiment partie de CGAL, mais sont dans une bibliothèque support. Des étudiants de l'ESSI ont développé une interface de CGALavec Open Inventor et Tcl/Tk, ainsi qu'une sortie Postscript.