Geometric computing plays a central role in most engineering activities: geometric modelling, computer aided design and manufacturing, computer graphics and virtual reality, scientific visualization, geographic information systems, molecular biology, fluid mechanics, and robotics are just a few well-known examples. The rapid advances in visualization systems, networking facilities and 3D sensing and imaging make geometric computing both dominant and more demanding concerning effective algorithmic solutions.

Computational geometry emerged as a discipline in the seventies and has met with considerable success in resolving the asymptotic complexity of basic geometric problems including data structures, convex hulls, triangulations, Voronoi diagrams, geometric arrangements and geometric optimisation. However, in the mid-nineties, it was recognized that the applicability in practice of the computational geometry techniques was far from satisfactory and a vigorous effort has been undertaken to make computational geometry more effective. The prisme project together with several partners in Europe took a prominent role in this research and in the development of a large library of computational geometry algorithms, cgal.

geometrica aims at pursuing further the effort in this direction and
at building upon the initial success. Its focus is on effective
computational geometry with special emphasis on *curves and
surfaces*. This is a challenging research area with a huge number of
potential applications in almost all application domains involving
geometric computing.

The overall objective of the project is to give effective computational geometry for curves and surfaces solid mathematical and algorithmic foundations, to provide solutions to key problems and to validate our theoretical advances through extensive experimental research and the development of software packages that could serve as steps towards a standard for safe and effective geometric computing.

The research conducted by geometrica focuses on three main directions:

- design and analysis of geometric algorithms for curves, surfaces and triangulations

- robust computation and advanced programming,

- shape approximation, surface reconstruction and compression.

geometrica intends to revisit the field of computational geometry in order to understand how structures that are well-known for linear objects behave when defined on curves and surfaces. We are especially interested in extending the theory of Voronoi diagrams beyond the affine case. This research includes to study the mathematical properties of these structures and to design algorithms to construct them. To ensure the effectiveness of our algorithms, we precisely specify what are the basic numerical primitives that need to be performed, and consider tradeoffs between the complexity of the algorithms (i.e. the number of primitive calls), and the complexity of the primitives and their numerical stability. Working out carefully the robustness issues is a central objective of geometrica (see below).

Decomposing a complex shape in basic simple elements such as triangles
or tetrahedra is a first step for many purposes, starting from
visualization and going to more complex modeling such as meshing for
finite elements method. *Triangulations* are a fundamental
structure in this respect. Triangulations and, in particular,
Delaunay triangulations have been extensively studied by the
Computational Geometry community: the algorithmic and combinatorial
issues are mostly solved in the plane. The situation is different in
higher dimensions, and even in three dimensional space, many questions
remain open.

A first question is related to the combinatorial complexity of the Delaunay triangulation in 3-dimensional space. It is well known that this size can be quadratic, but examples of such behavior seem quite artificial and work has been done to prove sub-quadratic behaviors under realistic hypotheses.

*Constrained triangulations* are triangulations that include
some given sets of edges and triangles. A typical case is to include
the boundary of some polyhedral domain. Computing a constrained
triangulation is more difficult than just triangulating a set of
points, and it is NP-hard to decide if such a triangulation exists.
Adding points to the original set is then required to help
triangulating while respecting the constraints or to obtain well
shaped tetrahedra. Designing efficient algorithms, with certified
results and a controlled number of added points for such purposes is
an active area of research geometrica investigates.

An implementation of a geometric algorithm is called *robust* if
it produces a valid output for all inputs. Geometric programs are
notorious for their non-robustness due to two reasons: (1) Geometric
algorithms are designed for a model of computation where real numbers
are dealt with exactly and (2) geometric algorithms are frequently
only formulated for inputs in general position. As a result,
implementations may crash or produce nonsensical output. This is
observed in all commercial cad-systems.

The importance of robustness in geometric computations was recognized
for a long time, but significant progress was made only in recent
years. geometrica held a central role in this process, including advances
regarding the *exact computation paradigm*. In this paradigm,
robustness is achieved by a combination of three methods:
*exact arithmetic*, *dedicated arithmetic* and
*controlled rounding*.

In addition to pursuing research on robust geometric computation, geometrica is an active member of a European consortium that develops a large library named cgal. This library makes extensive use of generic programming techniques and is both a unique tool to perform experimental research in Computational Geometry and a comprehensive library for Geometric Computing. A startup company has been launched in January 2003 to commercialize components from cgal and to offer services for geometric applications.

Complex shapes are ubiquitous in robotics (configuration spaces),
computer graphics (animation models) or physical simulations (fluid
models, molecular systems). In all these cases, no natural *shape
space* is available or when such spaces exist they are not easily
dealt with. When it comes to performing calculations, the objects
under study must be discretized. On the other hand, several
application areas such as Computer Aided Geometric Design or medical
imaging require reconstructing 3D or 4D shapes from samples.

The questions afore-mentioned fall in the realm of *geometric
approximation theory*, a topic geometrica is actively involved in. More
precisely, the generation of samples, the definition of differential
quantities (e.g. curvatures) in a discrete setting, the geometric and
topological control of approximations, as well as multi-scale
representations are investigated. Connected topics of interest are
also the progressive transmission of models over networks and their
compression.

Surface mesh generation and surface reconstruction have received a
great deal of attention by researchers in various areas ranging from
computer graphics through numerical analysis to computational
geometry. However, work in these areas has been mostly heuristic and
the first theoretical foundations have been established only recently.
Quality mesh generation amounts to finding a partition of a domain
into linear elements (mostly triangles or quadrilaterals) with
topological and geometric properties. Typically, one wants to
construct a piece-wise linear (PL) approximation with the ``same''
topology as the original surface (same topology may have several
meanings). In some contexts, one wants to simplify the topology in a
controlled way. Regarding the geometric distance between the surface
and its PL approximation, different measures must be considered:
Hausdorff distance, errors on normals, curvatures, areas etc. In
addition, the shape, angles or size of the elements must match certain
criteria. We call *remeshing* the techniques involved when the
input domain to be discretized is itself discrete. The input mesh is
often highly irregular and non-uniform, since it typically comes as
the output of a surface reconstruction algorithm applied to a point
cloud obtained from a scanning device. Many geometry processing
algorithms (e.g. smoothing, compression) benefit from remeshing,
combined with uniform or curvature-adapted sampling. geometrica intends to
contribute to all aspects of this matter, both in theory and in
practice.

Modeling 3D shapes is required for all visualization applications where interactivity is key since the observer can change the viewpoint and get an immediate feedback. This interactivity enhances the descriptive power of the medium significantly. For example, visualization of complex molecules help drug designers to understand their structure. Multimedia applications also involve interactive visualization and include e-commerce (companies can present their product realistically), 3D games, animation and special effects in motion pictures. The uses of geometric modeling also cover the spectrum of engineering, computer-aided design and manufacture applications (CAD/CAM). More and more stages of the industrial development and production pipeline are now performed by simulation, the geometric modeling for simulation having received more attention in recent years due to the increased performance of numerical simulation packages. Another emerging application of geometric modeling with high impact is medical visualization and simulation.

In a broad sense, shape reconstruction consists of creating digital models of real objects from points. Example application areas where such a process is involved are Computer Aided Geometric Design (making a car model from a clay mockup), medical imaging (reconstructing an organ from medical data), geology (modeling underground strata from seismic data), or cultural heritage projects (making models of ancient and or fragile models or places). The availability of precise and fast scanning devices has also made the reproduction of real objects more effective such that additional fields of applications are coming into reach. The members of geometrica have a long experience in shape reconstruction and contributed several original methods based upon the Delaunay and Voronoi diagrams.

Two of the most prominent challenges of the post-genomic era are to understand the molecular machinery of the cell and to develop new drug design strategies. These key challenges require the determination, understanding and exploitation of the three-dimensional structure of several classes of molecules (nucleic acids, proteins, drugs), as well as the elucidation of the interaction mechanisms between these molecules.

These challenges clearly involve aspects from biology, chemistry, physics, mathematics and computer science. For this latter discipline, while the historical focus has been on text and pattern matching related algorithms, the amount of structural data now available calls for geometric methods. At a macro-scopic scale, the classification of protein shapes, as well as the analysis of molecular complexes requires shape description and matching algorithms. At a finer scale, molecular dynamics and force fields require efficient data-structures to represent solvent models, as well as reliable meshes so as to solve the Poisson-Boltzmann equation.

Meshes are the basic tools for scientific computation. Unstructured meshes allow to mesh complex shapes and to refine locally the mesh, which may be required because of the geometry or in order to increase the precision of the computation. geometrica contributes to 2D and 3D meshes, and also to surface meshes. The methods are mostly based on Delaunay triangulations, Voronoi diagrams and their variants. Affine diagrams are well-suited for volume element methods. Non affine diagrams are especially important in the context of anisotropic meshes. Anisotropic quadrilateral meshes are also of interest.

The emerging demand for visualizing and simulating 3D geometric data
in networked environments has motivated research on representations
for such data. Slow networks require data compression to reduce the
latency, and progressive representations to transform 3D objects into
streams manageable by the networks. The members of geometrica have
contributed several original compression methods for surface and
volume meshes . We investigate both
single-rate and progressive compression depending on whether the model
is intended to be decoded during, or only after, the
transmission. Progressive compression is closely related to both
approximation and information theory, aimed at trading off data size
for approximation accuracy (so-called rate-distortion tradeoff). We
cast this problem into that of
*shape compression*.

cgal is a C++ library of geometric algorithms developed initially within two European projects (project ESPRIT IV LTR CGAL december 97 - june 98, project ESPRIT IV LTR GALIA november 99 - august 00) by a consortium of eight research teams from the following institutes: Universiteit Utrecht, Max-Planck Institut Saarbrücken, INRIA Sophia Antipolis, ETH Zürich, Tel Aviv University, Freie Universität Berlin, Universität Halle, RISC Linz. The goal of cgal is to make the solutions offered by the computational geometry community available to the industrial world and applied domains.

The cgal library consists in a kernel, a basic library and a support
library. The kernel is made of classes that represent elementary
geometric objects (points, vectors, lines, segments, planes,
simplices, isothetic boxes...), as well as affine transformations and
a number of predicates and geometric constructions over these objects.
These classes exist in dimensions 2 and 3 (static dimension) and d
(dynamic dimension). Using the template mechanism, each class can be
instantiated following several representation modes : we can choose
between Cartesian or homogeneous coordinates, use different types to
store the coordinates, and use reference counting or not. The kernel
also provides some robustness features using some specifically-devised
arithmetic (interval arithmetic, multi-precision arithmetic, static
filters...).

The basic library provides a number of geometric data structures as
well as algorithms. The data structures are polygons, polyhedra,
triangulations, planar maps, arrangements and various search
structures (segment trees, d-dimensional trees...). Algorithms are
provided to compute convex hulls, Voronoi diagrams, boolean operations
on polygons, solve certain optimization problems (linear, quadratic,
generalized of linear type). Through class and function templates,
these algorithms can be used either with the kernel objects or with
user-defined geometric classes provided they match a documented
interface (concept).

Finally, the support library provides random generators, and interfacing code with other libraries, tools, or file formats (Ascii files, QT or LEDA Windows, OpenGL, Open Inventor, Postscript, Geomview...).

geometrica is particularly involved in the arithmetic issues that arise in the treatment of robustness issues, the kernel, triangulation packages and their close applications such as alpha shapes, general maintainance...

cgal is about 400,000 lines of code and supports various platforms: GCC (Linux, Solaris, Irix, Cygwin...), MipsPro (IRIX), SunPro (Solaris), Visual C++ (Windows), Intel C++... Version 3.0 has been released on november 6th, 2003. The previous release, cgal 2.4, has been downloaded 9000 times from our web site, during the 18 months period where it was the main version.

In collaboration with Frank Da and Andreas Fabri. http://cgal.inria.fr/Reconstruction/.

The surface reconstruction algorithm developed by David Cohen-Steiner
and Frank Da using cgal is available as a *web service*. Via
the web, the user uploads the point cloud data set to the server and
obtains a Vrml file of the reconstructed surface, which gets
visualized in the browser of the user. This allows the user to get a
first impression of the algorithm to see if it fits the needs, before
contacting Inria for obtaining an executable, learning how to
call the program, etc. At the same time it allows us to collect
real-world data sets to test and improve our algorithms.

In collaboration with Menelaos Karavelas, University of Notre Dame (USA).

We have continued our work on Moebius diagrams which can equivalently
be defined as Voronoi diagrams whose bisectors are hyperspheres. A
full implementation is now available. We have also developed an
algorithm for constructing a cell in the euclidean Voronoi diagram of
n spheres. This algorithm is based on the observation that its
construction reduces to a Moebius diagram on a sphere via an
inversion. The predicates involved have been precisely analyzed. This
algorithm can also be used to compute the convex hull of a finite set
of spheres. Constructing the entire diagram is obtained by gluing
together the various cells. A first prototype has been developed.

Voronoi diagrams are fundamental data structures in Computational Geometry. Affine diagrams reduce to polytopes in higher dimension and are well understood. The situation is very different for curved Voronoi diagrams. Curved Voronoi diagrams arise in various contexts where the objects are not punctual and/or the distance is not the euclidean distance. We survey of the main results on curved Voronoi diagrams.We first recall basic results on affine diagrams, the diagrams whose bisectors are hyperplanes. We subsequently extend affine diagrams and define and study Möbius diagrams, the diagrams whose bisectors are hyperspheres. We then study the euclidean Voronoi diagram of some simple objects like spheres and planar objects for which effective algorithms exist. For more general objects, although some combinatorial and algorithmic results exist, exact computation does not compete with approximate algorithms. We show that provably good approximations can be obtained from the Voronoi diagram of a sample of points on the boundary of the objects.

In collaboration with H. Brönnimann (Brooklyn Polytechnic), V. Dujmović and Sue Whitesides (Mac Gill), H. Everett, M. Glisse, X. Goaoc and S. Lazard (INRIA-ISA) and H.-S. Na (Soongsil Univ.).

The visibility complex encodes visibility relations in 3D, and is used
to answer visibility queries in a variety of important applications in
computer graphics. The worst-case complexity of the complex for a
scene of n triangles can be up to (n^{4}), but is only
expected O(n) for certain random scenes (e.g. n unit
balls). Motivated by this wide variability and the difficulty of
proving analytical results in this area, we examine the intermediate
case of a scene of k possibly intersecting polytopes with a total of
n edges, occurring naturally from the convex decomposition of a
polyhedral scene.
We prove that the number of lines tangent to four possibly
intersecting polytopes in with n edges in total form
(n^{2}) connected components. In the generic case, each
connected component is a single line, but our result still holds for
extremely degenerate scenes .

In collaboration with Hervé Brönnimann (Brooklyn Polytechnic), Sylvain Lazard (INRIA-ISA) and Frank Sottile (Univ. Massachusetts).

We establish upper and lower bounds on the number of connected components of lines tangent to four triangles in . We show that there exist configuration of four triangles in with 88 tangent lines, and at most 216 isolated tangent lines, or an infinity (this may happen if the lines supporting the sides of the triangles are not in general position). In the latter case, the tangent lines may form up to 216 connected components, at most 54 of which can be infinite. The bounds are likely to be too large, but we can strengthen them with additional hypotheses: for instance, if no four lines supporting each an edge of a different triangle lie on a common ruled quadric, then the number of tangents is always finite and at most 162; if the four triangles are disjoint, then this number is at most 210; and if both conditions are true, then the number of tangents is at most 156 (the lower bound 88 still applies) .

In collaboration with Guillaume Melquiond (Arénaire).

Floating point arithmetic provides a fast but inexact way of computing geometric predicates. In order for these predicates to be exact, it is important to rule out all the numerical situations where floating point computations could lead to wrong results. Taking into account all the potential problems is a tedious and error-prone work to do by hand. We have studied a floating point implementation of the 2D orientation predicate, and we have described a formal and partially automatized verification of this algorithm in order to avoid many pitfalls, such as increased roundoff errors cases arising in underflow situations. The presented method is not limited to this particular predicate, it can easily be used to produce correct semi-static floating point filters of other geometric predicates.

In collaboration with Monique Teillaud (Galaad), Ioannis Emiris, Elias Tsigaridas and Athanasios Kakargias (National University of Athens).

We focus here on the arrangement of conic arcs in the plane. Our first contribution is the design, implementation and testing of a kernel for computing arrangements of circular arcs. A preliminary C++ implementation exists also for arbitrary conic curves. We discuss the representation and predicates of the geometric objects. Our implementation is targeted for inclusion in the cgal library.

Our second contribution concerns exact and efficient algebraic algorithms for the case of conics. They treat all inputs, including degeneracies, and they are implemented as part of the library synaps 2.1. Our tools include Sturm sequences, univariate resultants, Descartes' rule, and isolating points.

Thirdly, our experiments on circular arcs show that our methods compare favorably to existing alternatives using core 1.6x and leda 4.5.

In collaboration with Lutz Kettner, Kurt Mehlhorn (Max-Planck Institut, Saarbrücken), Stefan Schirra (Otto-von-Guericke-Universität, Magdeburg) and Chee Yap (New York University).

The algorithms of computational geometry are designed for a machine model with exact real arithmetic. Substituting floating point arithmetic for the assumed real arithmetic may cause implementations to fail. Although this is well known, there is no comprehensive documentation of what can go wrong and why. In this paper , we study simple algorithms for planar convex hulls and 3d Delaunay triangulations and give examples which make the algorithms fail in many different ways. For the incremental planar convex hull algorithm our examples cover the negation space of the correctness properties of the algorithms. We also show how to construct failure-examples semi-systematically and discuss the geometry of the floating point implementation of the orientation predicate. We hope that our work will be useful for teaching computational geometry.

In collaboration with David Rey (Dream).

Surface reconstruction consists of producing a surfacic mesh from a set of 3D points (e.g. acquired by scanners) to represent an object shape. This inverse problem has various applications, in particular in the fields of medical imaging or CAD. Many surface reconstruction algorithms exist in the computational geometry litterature, and geometrica has developed several of them. Each algorithm is adapted to some particular applications or to particular data sets. Thus it is necessary to have a toolbox with various algorithms to be able to deal with various domains and data sets. We currently work on integrating this toolbox as a package of cgal.

In collaboration with Joachim Giesen (ETH Zürich)

Given a finite sampling of an unknown surface
S, surface reconstruction is concerned with the calculation of a
model of S from P. The model can be represented as a smooth or a
triangulated surface, and is expected to match S from a topological
and geometric standpoints.

In this survey, we focus on the recent developments of Delaunay based surface reconstruction methods, which were the first methods (and in a sense still the only ones) for which one can precisely state properties of the reconstructed surface. We outline the foundations of these methods from a geometric and algorithmic standpoints. In particular, a careful presentation of the hypothesis used by these algorithms sheds light on the intrinsic difficulties of the surface reconstruction problem —faced by any method, Delaunay based or not.

The survey written by F. Cazals and J. Giesen
will appear as book chapter in the monograph collecting contributions
from the European project *Effective Computational Geometry*. A
shortened version co-authored with M. Yvinec
will appear as a book chapter within the scope of the European project
Aim@Shape.

We have pursued our work on surface meshing. A remarkable feature of our algorithm (already noted last year) is that the surface needs only to be known through an oracle that, given a line segment, detects whether the segment intersects the surface and, in the affirmative, returns an intersection point and the distance to the skeleton at that point. This makes the algorithm useful in a wide variety of contexts and for a large class of surfaces. This year, we have further reduced the informational complexity of the algorithm. More precisely, we have shown that the oracle only needs to detect segments that intersect the surface an odd number of times. Hence, for implicit surfaces and isosurfaces, we can replace the costly operation of detecting intersections by the much simpler evaluation of the sign of a function at two points. In pratice, this led to reducing the computing time by several orders of magnitude.

In collaboration with the Epidaure and Odyssée project-teams, we have applied the algorithm to medical images, especially brain images (see figure ).

A revised version of the code will be soon integrated in the cgal library (see section ).

In collaboration with Leo Guibas (Stanford University).

We consider the problem of discovering a C^{2} unknown surface S
using tactile probes .
We show that S can be approximated by a triangulated surface W
within any desired accuracy. We also bound the number of probes and
the number of elementary moves of the probing device. Our solution is
an extension of our previous work on Delaunay refinement techniques
for certified surface meshing. Our approximating surface enjoy the
many nice properties of the meshes obtained by those techniques,
e.g. exact topological type, facets with bounded aspect ratio.

Similar results were only known for the case of a single planar convex object, a much easier case which reduces to blind approximation of the support function. The non convex case is different in several respects. First, there is no global parametrization of the boundary and, moreover, we cannot simply probe from infinity and need to determine positions outside the object where to place the probing device and to determine paths along which the probing device can be safely moved without colliding with the object.

Following the perception-action-cognition paradigm, we distinguish between the probing cost, the displacement cost and the combinatorial cost. The information cost measures the number of probes. The displacement cost accounts for moving the probing device. The combinatorial cost accounts for the arithmetic operations and comparisons, and the maintenance of the data structures. We show that it is not possible, in general, to simultaneously optimize all costs and analyze them separately.

The understanding of surfaces embedded in requires
local and global concepts, which are respectively evocative of
differential geometry and differential topology. While the local
theory has been classical for decades, global objects such as the
foliations defined by the lines of curvature, or the medial axis still
pose challenging mathematical problems.
This duality is also tangible from a practical perspective, since
algorithms manipulating sampled smooth surfaces (meshes or point
clouds) are more developed in the local than the global category. As
an example and assuming this makes sense for the applications
encompassed, we are not aware as of today of any algorithm able to
report —under reasonable assumptions— a topologically *correct* medial axis or foliation from a sampled surface.

As a prerequisite for those interested in the development of algorithms for the manipulation of surfaces, we propose a concise overview of global objects related to curvature properties of a smooth generic surface . Gathering from differential topology and singularity theory sources, our presentation focuses on the geometric intuition rather than the technicalities. We first recall the classification of umbilics, of curvature lines, and describe the corresponding stable foliations. Next, fundamentals of contact and singularity theory are recalled, together with the classification of points induced by the contact of the surface with a sphere. This classification is further used to define ridges and their properties, and to recall the stratification properties of the medial axis.

From a theoretical perspective, we expect this survey to ease the access to intricate notions scattered over several sources. From a practical standpoint, we hope it will be helpful for those interested in the manipulation of surfaces without using global parametrizations, and also for those aiming at producing globally coherent approximations of surfaces.

Consider a smooth surface, and at each point which is not
an umbilic, respectively paint in blue (red) anything related to the
maximum (minimum) principal curvature. Given such a surface, a blue
(red) ridge is a curve on the surface such that at each of its points,
the principal blue (red) curvature has an extremum along its blue
(red) curvature line. Ridges are curves of *extremal* curvature
and therefore encode important informations used in segmentation,
registration, matching and surface analysis.

Surprisingly, no method developed so far to report ridges from a mesh
approximating a smooth surface comes with a careful analysis, which
entails that one does not know whether the ridges are reported in a
coherent fashion. This paper aims at bridging this gap with the
following contributions .
First, a careful analysis of the *Acute rule*—an orientation
procedure used in most algorithms— is presented. Second, given a
triangulation T approximating a smooth generic surface S, we
present sufficient conditions on T together with a certified
algorithm reporting ridges in a topologically coherent fashion. Third,
we develop an algorithm and a filtering procedure aiming at reporting
the most salient features of a coarse mesh T.

Ridges and umbilics on a triangulated surface are illustrated on Fig. .

In collaboration with M.Desbrun (California Institute of Technology).

Achieving efficiency in mesh processing often demands that overly large 3D datasets be reduced to more concise, yet faithful representations. Despite numerous applications ranging from geometry compression to reverse engineering, concisely capturing the geometry of a surface remains a tedious task. In this paper , we present both theoretical and practical contributions that result in a novel and versatile framework for geometric approximation of triangulated surfaces. We depart from the usual strategy by casting shape approximation as a variational geometric partitioning problem. Using the concept of geometric proxies, we drive the distortion error down through repeated clustering of faces into best-fitting regions. Our approach is entirely discrete and error-driven, and does not require parameterization or local estimations of differential quantities. We also introduce a new metric based on normal deviation, and demonstrate its superior behavior at capturing anisotropy.

Vector and direction fields are commonly used for modeling physical
phenomena, where a direction and magnitude, or a vector is assigned to
each point inside a domain. Visual depiction of flow fields is
motivated by the analysis and exploration of results in scientific
computing. One of the most popular method in flow visualization
consists of placing a set of *streamlines* which are always
tangential to the flow in order to better emphasis the global field
coherency. Another benefit of using such a sparse representation is
the possibility to stack a streamline placement on top of an image or
any other dense representation. Besides, high quality placement of
streamlines has recently proven useful in other applications such as
non-photorealistic rendering or curve-based surface remeshing.

We propose a novel algorithm for placement of streamlines from two-dimensional steady vector or direction fields . Our method consists of placing one streamline at a time by numerical integration started the furthest away from all previously placed streamlines. Although simple and deterministic, such a farthest point seeding strategy leads to high quality placements by favoring long streamlines, while retaining uniformity with the increasing density. We show in a series of comparative results several improvements over state-of-the-art methods for three important aspects: placement quality, simplicity and efficiency. Robustness as well as efficiency is achieved by using the Delaunay triangulation to model the streamlines, address proximity queries as well as to determine the biggest voids by exploiting the empty circle property. Our method also handles variable density and extends to multiresolution.

In collaboration with Gilles Schaeffer (Laboratoire d'Informatique de l'École Polytechnique, LIX)

We designed a hierarchical structure, splitting a triangulation of n
triangles in O(log^{2}n) small pieces, each of them splitted again
in O(logn) tiny pieces of size <logn. The number of different
possible triangulations of size <logn is small enough so that the
construction of a catalog of all of them is possible.
Consequently, we can replace in the main
structure each tiny triangulation by a pointer to the
catalog. Ongoing analysis of this structure provides a cost of
2.17×n bits plus a sublinear term in .

In collaboration with François Cayre (INRIA-TEMICS) and Francis Schmitt and Henri Maître (ENST).

Watermarking consist in modifying slightly a model to hide some information inside the data itself. Most watermarking schemes for 3D meshes arise from the CAD community. The analysis of their watermarking performances are generally not easily tractable. In this paper, we describe a framework for fragile watermarking of 3D triangle meshes that enables accurate assessment of its performances. A watermarking scheme is called fragile if the watermark disappear easily in case of manipulation of the model, this is useful for authentification. Experiments show the relevance of the method towards authentication and integrity of heritage data purposes.

One often argues that authentication may be performed using pure cryptographic primitives. We use watermarking because we want to allow some non malicious transformations of the mesh. Moreover, our technique enables visual inspection of the mesh for integrity assessment.

Our method is based on alteration of geometrical invariants along a special traversal of the mesh connectivity graph. We prove that our traversal takes linear time for maximizing the number of sites that can store a watermark bit. We deduce several watermarking properties of our scheme, including the minimum watermark segment (MWS), the security (in bits) of the embedding, the class of robustness and the probability of false alarm. To our knowledge, such an accurate characterization of a watermarking scheme for 3D triangle meshes is not trivial for other similar methods .

In collaboration with Menelaos Karavelas, University of Notre Dame (USA).

For compression of 3D meshes, we propose an algorithm to encode the
transformation of a polygonal mesh into a triangular mesh, getting a
full coder by combination with a triangular coder. In this way, we
have the possibility of choosing any triangular coder, which allows
to take the most relevant for
a particular kind of mesh. Let G be a 3-connected simple planar
graph with e edges. We introduce a special type of triangulation
T_{G} of G, based on the canonical orderings of this class of
graphs. We show how to reconstruct the original graph starting from
its canonical triangulation T_{G}, using only the face degrees of G:
this detriangulation phase takes linear time and requires at most
e + o(e) bits. Our canonical coding of the detriangulation of G can
be combined with any triangulation coder to obtain a full coder of the
connectivity of any genus 0 polygonal mesh .

The description of non-covalent contacts in (macro-)molecular assemblies is of fundamental interest for understanding the formation and the stability of such complexes. Unfortunately, the description of such contacts is usually carried out using pairwise distances and the Solvent Accessible Surface Area Lost upon formation of the complex —SASAL for short, but without distinguishing finer topological and geometric properties of the interface. The goal of this paper is to develop a notion of interface amenable to a finer topological and geometric analysis, providing more accurate physical and chemical information.

Consider a complex made of two proteins A, B, and call W the
(crystallographic) water molecules.
The paper makes the following contributions.
First, we define from the Voronoi diagram of the atomic balls an
interface between A and B, which is coherent with the atoms
loosing accessibility to the solvent upon formation of the complex AB, and accommodates the crystallographic water
molecules. Second, we show how to study the topology (connected
components and boundaries) and the geometry of interfaces. Third, we
show how to weight the interface facets so as to recover the SASA lost
upon formation of the complex, and extend the weighting scheme to
accommodate atoms near the interface. Our interfaces are implemented
using the CGAL library, and the corresponding module integrated to a
VMD plug-in. A detailed experimental study on the usual
protein-protein databases will be reported in a companion paper.

The initial development phase of the Cgal library has been made by a European consortium. In order to achieve the transfer and diffusion of Cgal in the industry, a company called Geometry Factory has been founded in January 2003 by Andreas Fabri (http://www.GeometryFactory.com).

The goal of this company is to pursue the development of the library and to offer services in connection with Cgal (maintenance, support, teaching, advice). Geometry Factory is a link between the researchers from the computational geometry community and the industrial users.

It offers licenses to interested companies, and provides support. There are contracts in various domains such as CAD/CAM, medical applications, GIS, computer vision...

Geometry Factory is keeping close contacts with the original consortium members, and in particular with geometrica.

Seemage is a start-up devoted to collaborative visualization and multimedia interactive presentation (http://www.seemage.com). The presentations are currently saved as 3D models enriched with animations, properties and labels. Currently they are compressed using standard binary file compression algorithms and wrapped into a self-extractible interactive 3D player. The goal of this internship was to implement an existing progressive compression algorithm in order to allow higher compression rates together with a better adaptation to the network bandwidth and to the computing and rendering capability of heterogeneous terminals.

Also involved: Xavier Cavin and Nicolas Ray (ISA project, LORIA), Bernard Maigret and Christophe Chipot (CNRS Nancy).

Given a cell receptor involved in a given disease, Virtual Screening (VS) is the computational process aiming at selecting good drug candidates for that receptor. As opposed to High Throuput Screening which consists of performing wet chemistry experiments to qualify potential drugs, VS has the advantage of being cheaper and faster (more candidate molecules tested). Unfortunately, the effectiveness of VS depends upon the quality of the score functions used, and a VS process usually involves three filters —coarse, medium, fine, each being more accurate and more time consuming than its predecessor. VS requires investigating ligands and their receptors, i.e. proteins.

The *Protein-Protein Docking* ARC aims at contributing
state-of-the-art methods for ligands and protein modeling. The focus of
the second year has been on the characterization of Protein-Protein
interfaces .

In the national ACI initiative «Masses de données», the GéoComp project has been funded for three years. It involves people from LIX (Gilles Schaeffer, leader), LABRI (Cyrille Gavoille), CEA (Emmanuel Guitter) and INRIA-Geometrica (Olivier Devillers).

The project is devoted to data compression of geometric data, with links to combinatoric properties of geometric graphs and dynamic representation of geometric objects.

Also involved: Monique Teillaud (Galaad).

We have started an INRIA associated team with Hervé Brönnimann (Polytechnic University Brooklyn), around the subjects of generic programming of geometric algorithms. This work includes the specification of algorithms in terms of concepts of geometries. It also includes the interface between algorithms and data structures, as well as collaboration on robustness issues.

The geometrica seminar : http://www-sop.inria.fr/prisme/seminaire/

The geometrica seminar featured presentations from the following visiting scientists:

– G. Comte, Université de Nice

– C. Godin, CIRAD Montpellier

– J-P. Vert, Ecole des Mines de Paris

– G. Barequet, Technion, Israel

– K. Saetzler, School of Biomedical Sciences, University of Ulster

– G. Peyré, Polytechnique, Paris

– P. Schröder, Caltech, USA

– J. Snoeyink, UNC Chapel Hill, USA

– L. Guibas, Stanford University, USA

– C. Yap, New York University, USA

– P. Koehl, UC Davis, USA

– M. Attene, Italian National Research Council, Italy

– H. Brönnimann, Polytechnic University, New York, USA

– G. Melquiond, LIP, ENS Lyon

– K. Leon, Center of Molecular Immunology, Havana, Cuba

inria is the coordinating site of this project. J-D. Boissonnat is the project leader and M. Teillaud (galaad) the technical coordinator.

– Acronym : ECG, numéro IST-2000-26473

– Title : Effective Computational Geometry for Curves and Surfaces.

– Specific program : IST

– RTD (FET Open)

– Starting date : may 1st, 2001 - Duration : 3 years

– Participation mode of Inria : Coordinator

– Other participants : ETH (Zürich), Freie Universität (Berlin), Rijksuniversiteit (Groningen), Max Plank Institute (Sarrebruck), Tel Aviv University.

– Abstract : Effective processing of curved objects in computational geometry. Geometric algorithms for curves and surfaces, algebraic issues, robustness issues, geometric approximation.

The web site of the project includes a detailled description of the objectives and all results http://www-sop.inria.fr/prisme/ECG/.

inria is part of the Network of Excellence:

– Acronym : AIM@SHAPE

– Title: Advanced and Innovative Models And Tools for the development of Semantic-based systems for Handling, Acquiring, and Processing Knowledge Embedded in multidimensional digital objects).

– Reference: 506766

– Start Date: 2004-01-01

– Duration: 48 months

– Contract Type: Network of Excellence

– Action Line: Semantic-based knowledge systems

– Project Funding: 5.74 Million Euros.

– Other participants :

– IMATI, Genova, Italy.

– University of Genova, Italy.

– EPFL, Lausanne, Switzerland.

– Fraunhofer Institute, Germany.

– INPG, France.

– Center for Research and Technology, Greece.

– University of Geneva, Switzerland.

– SINTEF, Norway.

– TECHNION, Israel.

– Weizmann Institute, Israel.

– Utrecht University, Netherlands.

The mission of AIM@SHAPE is to advance research in the direction of semantic-based shape representations and semantic-oriented tools to acquire, build, transmit, and process shapes with their associated knowledge. We foresee a generation of shapes in which knowledge is explicitly represented and, therefore, can be retrieved, processed, shared, and exploited to construct new knowledge. The attainment of a new vision of shape knowledge is achieved by: the formalisation of shape knowledge and the definition of shape ontologies in specific contexts; the definition of shape behaviours which formalise the interoperability between shapes; the delineation of methods for knowledge-based design of shapes and the definition of tools for semantics-dependent mapping of shapes. The web site of the network includes a detailled description of the objectives and some results http://www.aim-at-shape.net.

- J-D. Boissonnat is a member of the editorial board of
*Theoretical Computer Science*,
*Algorithmica*,
*International Journal of Computational Geometry and Applications*,
*Computational Geometry : Theory and Applications*, and
*The Visual Computer*.

- J-D. Boissonnat co-edited the book *Algorithmic Foundations of Robotics V*, Springer 2004.

- M. Yvinec is a member of the editorial board of
*Journal of Discrete Algorithms*.

- S. Pion is co-editor of a special issue of
*Computational Geometry : Theory and Applications* on robustness issues.

- S. Pion and M. Yvinec are members of the CGAL editorial board.

- Jean-Daniel Boissonnat co-chaired (with Jack Snoeyink) the program committee of the 20th ACM Symposium on Computational Geometry SoCG 2004 (New York).

- Jean-Daniel Boissonnat was a member of the program committees of the second Eurographics Symposium on Geometry Processing 2004, the ACM Symposium on Solid Modeling and Applications SM'04, the European Workshop on Computational Geometry 2004.

- Pierre Alliez was member of the paper committee of the second Eurographics Symposium on Geometry Processing 2004, Eurographics 2004, Pacific Graphics 2004 and Shape Modeling International 2004.

- Frederic Cazals was member of the paper committee of the second Eurographics Symposium on Geometry Processing 2004 and of the Symposium on Point Based Graphics.

Jean-Daniel Boissonnat and Pierre Alliez organized the second Eurographics Symposium on Geometry Processing, held in Nice, July 2004.

- Jean-Daniel Boissonnat was a referee of the PhD thesis committee of Xavier Goaoc (université de Nancy 2).

- Pierre Alliez was a member of the PhD thesis committee of Frédéric Payan (Université de Nice).

Jean-Daniel Boissonnat is

- chairman of the Comité des Projets of INRIA Sophia-Antipolis.

- member of the Commission d'Evaluation of INRIA.

- Jean-Daniel Boissonnat was a member of the selection committee of INRIA (Applications in biology).

- Frédéric Cazals is member of the INRIA Comité d'Orientation Scientifique et Technologique —Scientific Steering Committee of INRIA.

- Olivier Devillers was chairman of the « Comité des utilisateurs des moyens informatiques de l'INRIA Sophia-Antipolis » (CUMI) until september.

- Mariette Yvinec is member of the « Comité des utilisateurs des moyens informatiques de recherche l'INRIA Sophia-Antipolis » (CUMIR) since october.

- Olivier Devillers is member of the committee for « détachements » at INRIA Sophia-Antipolis.

- Agnès Clément, Olivier Devillers and Pierre Alliez have been elected in october members of the « comité de centre » at INRIA Sophia-Antipolis.

- Sylvain Pion is a member of the « Commission du Développement Logiciel » (CDL) at INRIA Sophia-Antipolis.

- Jean-Daniel Boissonnat is member of the « Commission de spécialistes » of the Ecole Normale Supérieure de Paris.

- Frédéric Cazals is member of the « Commission de spécialistes » of the Mathematics Department of the University of Bourgogne, Dijon, France.

- Frédéric Cazals served as panel expert for the Austrian Science Foundation (Discipline: Applied Geometry).

- Mariette Yvinec was member of the selection committee of INRA (committe number 3 for CR1 positions in Applied Mathematics, structural biology)

The geometrica project maintains on its web site a collection of comprehensive sheets about the subjects presented in this report, as well as downloadable softwares.

A surface reconstruction service is also available (see section ).

- Olivier Devillers chaired the DEA : «Images and vision» at Nice Sophia-Antipolis University during scholar year 2003-2004.

- In the «Master STIC» of Nice Sophia-Antipolis University Olivier Devillers chairs the second year research speciality : «Image et géométrie pour le multimédia et la modélisation du vivant»

- Olivier Devillers is professor «Chargé de cours» at École Polytechnique.

- Ecole Centrale Paris, Introduction to Computational Structural Biology (F. Cazals - 9h, M. Nilges (Inst. Pasteur) - 6h)

- MPRI (Master Parisien de Recherches Informatiques) (2004-2005), Cours de 2ième annee, Géométrie algorithmique, 30h, Jean-Daniel Boissonnat, Mariette Yvinec.

- École Polytechnique (Palaiseau), Computational Geometry (2004-2005), 40h (O. Devillers).

- École Polytechnique (Palaiseau), Java programming (2004-2005), exam (O. Devillers).

- École Polytechnique (Palaiseau), Basis of computer science(2003-2004), 50h (O. Devillers).

- ISIA (Sophia-Antipolis), Computational Geometry (2004-2005), 10h (O. Devillers).

- ESSI (Sophia-Antipolis), Computational Geometry, 30h (O. Devillers, P. Alliez).

- Maîtrise Informatique (Nice), Computational Geometry, 20h (O. Devillers, P. Alliez).

- DEA Images et Vision (Sophia-Antipolis), From Computational Geometry to Geometric Computing (2003-2004), 15h (O. Devillers).

- Master STIC-IGMMV (Sophia-Antipolis), Algorithmic frameworks for geometry (2004-2005), 15h (O. Devillers).

- Master STIC-IGMMV (Sophia-Antipolis), Surfaces and meshes (2004-2005), (F. Cazals - 9h, P. Alliez - 6h).

- Master STIC-IGMMV (Sophia-Antipolis), Introduction to Computational Structural Biology (2004-2005), (F. Cazals - 8h, R. Gautier (UNSA-CNRS) - 4h, E.Thoreau (Galderma) - 3h).

- Ecole CIMPA ``Géométrie et topologie différentielle, géométrie algorithmique, 17-28 Mai 2004 (FST de Marrakech), 10h (J-D. Boissonnat).

- Master IVR - Grenoble, Maillages et Surfaces, (F. Cazals - 6h; D. Attali (CNRS) - 6h).

- Master MIGS - Dijon, Maillages et surfaces (P. Alliez - 6h), Robustesse des algorithmes géométriques (S. Pion - 6h), Algorithmes en biologie structurale (F. Cazals - 6h).

- CGAL Course - Nancy (Loria) : Generic programming and CGAL, Robustness issues in CGAL : arithmetics and the kernel (S. Pion 12h).

Internship proposals can be seen on the web at http://www-sop.inria.fr/prisme/Stages/

- Jérôme Gahide, *Simplification and Optimized Compression for Interactive
Rendering of 3D Models.* Engineer Internship, ESSI.

- Abdelkrim Mebarki, *Farthest Point Seeding for Placement of Streamlines*.
Master Internship Images-Vision, Université de Nice.

- Daniel Loreto, *Delaunay triangulation using swap*. MIT Internship.

- Camille Wormser, *Maillages anisotropes d'un domaine plan* Internship of DEA d'algorithmique (Paris).

- Benjamin Cotasson, *Approximation de Surfaces Moléculaires* ENSG (Ecole Nationale Supérieure de Géographie.

- Parag Agrawal, *Partial geometric shape matching using product
graphs* IIT Bombay.

- Luca Castelli,
*Compression et entropie d'objets pour la synthèse d'images*
en cotutelle avec l'École Polytechnique.

- Christophe Delage, *Non affine Voronoi diagrams*, ENS-Lyon.

- Thomas Lewiner,
*Computational Topology and Applications in Molecular Modeling*,
École Polytechnique.

- Abdelkrim Mebarki, *Structures de données compactes pour la géométrie*,
université de Nice-Sophia Antipolis.

- Steve Oudot,
*Maillages de surfaces*,
École Polytechnique.

- Marc Pouget,
*Computational Differential Geometry*,
université de Nice-Sophia Antipolis.

- Laurent Rineau,
*Maillages tétraédriques*,
Université de Paris VI.

- Marie Samozino,
*Filtrage, simplification et représentation multirésolution
d'objets géométriques reconstruits*, Université de Nice-Sophia
Antipolis.

- Camille Wormser,
*Maillages et diagrammes anisotropes*.

- David Cohen-Steiner, *Quelques problèmes liés à la discrétisation des surfaces*, Ecole polytechnique . This thesis has obtained a Thesis Award from the Ecole Polytechnique.

-« Sampling, Meshing and Reconstructing Surfaces», 1st International Symposium on Voronoi Diagrams in Science and Engineering VD 2004, Tokyo (J.-D. Boissonnat).

– Deuxièmes journées sur les méthodes en mathématiques, Institut Henri Poincaré, June 2004, «Diagrammes de Voronoi, triangulations et surfaces» (J.-D. Boissonnat).

– «Voronoi diagrams and surfaces», European Graduate Program on Combinatorics and Geometry Computation, Frei Universitat, Berlin, June 2004 (J-D. Boissonnat).

Members of the project presented articles at conferences. The reader can refer to the bibliography to obtain the corresponding list.