VEGASis a research project of LORIA(Lorraine Research Laboratory in Computer Science and Applications), a laboratory shared by INRIA(National Institute for Research in Computer Science and Control), CNRS(National Center for Scientific Research), Université Henri Poincaré Nancy 1, Université Nancy 2, and INPL(National Engineering Institute of Lorraine).

The main scientific objective of the
VEGASresearch team is to
*contribute to the development of an effective geometric computing*dedicated to
*non-trivial geometric objects*. Included among its main tasks are the study and development of new algorithms for the manipulation of geometric objects, the experimentation of algorithms,
the production of high-quality software, and the application of such algorithms and implementations to research domains that deal with a large amount of geometric data, notably solid modeling
and computer graphics.

Computational geometry has traditionally treated linear objects like line segments and polygons in the plane, and point sets and polytopes in three-dimensional space, occasionally (and more recently) venturing into the world of non-linear curves such as circles and ellipses. The methodological experience and the know-how accumulated over the last thirty years have been enormous.

For many applications, particularly in the fields of computer graphics and solid modeling, it is necessary to manipulate more general objects such as curves and surfaces given in either implicit or parametric form. Typically such objects are handled by approximating them by simple objects such as triangles. This approach is extremely important and it has been used in almost all of the usable software existing in industry today. It does, however, have some disadvantages. Using a tessellated form in place of its exact geometry may introduce spurious numerical errors (the famous gap between the wing and the body of the aircraft), not to mention that thousands if not hundreds of thousands of triangles could be needed to adequately represent the object. Moreover, the curved objects that we consider are not necessarily everyday three-dimensional objects, but also abstract mathematical objects that are not linear, that may live in high-dimensional space, and whose geometry we do not control. For example, the set of lines in 3D (at the core of visibility issues) that are tangent to three polyhedra span a piecewise ruled quadratic surface and the lines tangent to a sphere correspond, in projective five-dimensional space, to the intersection of two quadratic hypersurfaces.

*Effectiveness*is a key word of our research project. By requiring our algorithms to be effective, we imply that the algorithms should be
*robust*,
*efficient*, and
*versatile*. By robust we mean algorithms that do not crash on degenerate inputs and always output topologically consistent data. By efficient we mean algorithms that run reasonably
quickly on realistic data where performance is ascertained both experimentally and theoretically. Finally, by versatile we mean algorithms that work for classes of objects that are general
enough to cover realistic situations and that account for the
*exact geometry*of the objects, in particular when they are curved.

The notion of 3D visibility plays a fundamental role in computer graphics. In this field, the determination of objects visible from a given point, the extraction of shadows or of penumbra boundaries are examples of visibility computations. In global illumination methods (e.g. radiosity algorithms), it is necessary to determine, in a very repetitive manner, if two points of a scene are mutually visible. The computations can be excessively expensive. In radiosity, it is not unusual that 50 to 70% of the simulation time is spent answering visibility queries.

Objects that are far apart may have very complicated and unintuitive visual interactions, and because of this, visibility queries are intrinsically global. This partially explains that, until now, researchers have primarily used ad hoc structures, of limited scope, to answer specific queries on-the-fly. Unfortunately, experience has shown that these structures do not scale up. The lack of a well-defined mathematical foundation and the non-exploitation of the intrinsic properties of 3D visibility result in structures that are not usable on models consisting of many hundreds of thousands of primitives, both from the viewpoint of complexity and robustness (geometric degeneracies, aligned surfaces, etc.).

We have chosen a different approach which consists of computing ahead of time (that is, off-line) a 3D global visibility structure for which queries can be answered very efficiently on-the-fly (on line). The 3D visibility complex – essentially a partition of ray space according to visibility – is such a structure, recently introduced in computational geometry and graphics , . We approach 3D global visibility problems from two directions: we study, on the one hand, the theoretical foundations and, on the other hand, we work on the practical aspects related to the development of efficient and robust visibility algorithms.

From a theoretical point of view, we study, for example, the problem of computing lines tangent to four among
kpolytopes. We have shown much better bounds on the number of these tangents than were previously known
. These results give a measure of the complexity
of the vertices (cells of dimension 0) of the visibility complex of faceted objects, in particular, for triangulated scenes.

From a practical point of view, we have, for example, studied the problem of the complexity for these 3D global visibility structures, considered by many to be prohibitive. The size of these
structures in the worst case is
O(
n^{4}), where
nis the number of objects in the scene. But we have, in fact, shown that when the objects are uniformly distributed, the complexity is linear in the size of the
input
. This probabilistic result does not prejudice
the complexity observed in real scenes where the objects are not uniformly distributed. However, initial empirical studies show that, even for real scenes, the observed complexity is largely
inferior to the theoretical worst-case complexity, as our probabilistic result appears to indicate.

We are currently working on translating these positive signs into efficient algorithms. We are studying new algorithms for the construction of the visibility complex, putting the accent on the complexity and the robustness.

Simple algebraic surfaces cover a variety of forms sufficient for representing the majority of objects encountered in the fields of design, architecture and industrial manufacturing. For instance, it has been estimated that 95% of all mechanical pieces can be well modeled by quadric patches (degree 2 surfaces, including planes, spheres, cylinders and cones) and torii . It is important, then, to be able to process these surfaces in a robust and efficient manner, notably in view of their use in realistic rendering.

In comparison with polygonal representations, modeling and visualization of scenes of quadrics pose new problems. We study, in particular, problems related to the visualization and realistic rendering of such models. We work alongside the members of the ALICE team on the development of the method called virtual meshing which allows us to go beyond the real geometry of objects by creating a geometric abstraction better adapted to light calculations .

Early in the rendering process, but along with the development of a tool for illuminating curved surfaces, it is important to have a reliable conversion process from volumetric to surface models. Many conventional modelers are based on the assembly – union, intersection, difference – of simple volumes (a paradigm called Constructive Solid Geometry or CSG), typically quadric volumes. On the other hand, illumination by the radiosity method can only be done on surface representations of objects (called BRep for Boundary Representation). It is necessary, therefore, to be able to pass, in a robust manner, from one representation to the other, an operation known as CSG-BRep conversion, in order to profit from the power of the virtual mesh . The idea is to make the geometric information coherent with the topological information that expresses the relations of proximity and inclusion of different elements.

A fundamental step of this conversion is the computation of the intersection of two primitive volumes. We have recently developed and implemented a robust and near-optimal algorithm for the computation of an exact parametric form of the intersection of two quadrics , . Our method is based on the projective formalism, techniques of linear algebra and number theory, and new theorems characterizing the rationality of the intersection. This is the first general approach to the intersection of two quadrics that is usable in practice (as opposed to the approach used until now, that of J. Levin ).

Lately we have worked on the use of this general algorithm in an application context. We continue to work on the development of a loop for exact CSG-BRep conversion for models in which the basic primitives are quadric volumes. This work calls for the resolution of algebraic systems for which we collaborate with the members of the SPACES and SALSA projects.

Our main application domain is photorealistic rendering in computer graphics. We are especially interested in the application of our work to virtual prototyping, which refers to the many steps required for the creation of a realistic virtual representation from a CAD/CAM model.

When designing an automobile, detailed physical mockups of the interior are built to study the design and evaluate human factors and ergonomic issues. These hand-made prototypes are costly, time consuming, and difficult to modify. To shorten the design cycle and improve interactivity and reliability, realistic rendering and immersive virtual reality provide an effective alternative. A virtual prototype can replace a physical mockup for the analysis of such design aspects as visibility of instruments and mirrors, reachability and accessibility, and aesthetics and appeal.

Virtual prototyping encompasses most of our work on effective geometric computing. In particular, our work on 3D visibility should have fruitful applications in this domain. As already explained, meshing objects of the scene along the main discontinuities of the visibility function can have a dramatic impact on the realism of the simulations.

Solid modeling, i.e., the computer representation and manipulation of 3D shapes, has historically developed somewhat in parallel to computational geometry. Both communities are concerned with geometric algorithms and deal with many of the same issues. But while the computational geometry community has been mathematically inclined and essentially concerned with linear objects, solid modeling has traditionally had closer ties to industry and has been more concerned with curved surfaces.

Clearly, there is considerable potential for interaction between the two fields. Standing somewhere in the middle, our project has a lot to offer. Among the geometric questions related to solid modeling that are of interest to us, let us mention: the description of geometric shapes, the representation of solids, the conversion between different representations, data structures for graphical rendering of models and robustness of geometric computations.

We work in collaboration with CIRTESon rapid prototyping. CIRTES, a company based in Saint-Dié-des-Vosges, has designed a technique called Stratoconception where a prototype of a 3D computer model is constructed by first decomposing the model into layers and then manufacturing separately each layer, typically out of wood of standard thickness (e.g. 1 cm), with a three-axis CNC (Computer Numerical Controls) milling machine. The layers are then assembled together to form the object. The Stratoconception technique is cheap and allows fast prototyping of large models.

When the model is complex, for example an art sculpture, some parts of the models may be inaccessible to the milling machine. These inaccessible regions are sanded out by hand in a post-processing phase. This phase is very consuming in time and resources. We work on minimizing the amount of work to be done in this last phase by improving the algorithmic techniques for decomposing the model into layers, that is, finding a direction of slicing and a position of the first layer .

QI stands for ``Quadrics Intersection''. QI is the first exact, robust, efficient and usable implementation of an algorithm for parameterizing the intersection of two arbitrary quadrics, given in implicit form, with integer coefficients. This implementation is based on the parameterization method described in , and represents the first complete and robust solution to what is perhaps the most basic problem of solid modeling by implicit curved surfaces.

QI is written in C++ and builds upon the LiDIA computational number theory library bundled with the GMP multi-precision integer arithmetic . QI can routinely compute parameterizations of quadrics having coefficients with up to 50 digits in less than 100 milliseconds on an average PC; see for detailed benchmarks.

Our implementation consists of roughly 18,000 lines of source code. QI has being registered at the Agence pour la Protection des Programmes (APP). It is distributed under the free for non-commercial use INRIA license and will be distributed under the QPL license in the next release. The implementation can also be queried via a web interface .

Since its official first release in June 2004, QI has been downloaded six times a month on average and it has been included in the geometric library EXACUS developed at the Max-Planck-Institut für Informatik (Saarbrücken, Germany). QI is also used in a broad range of applications; for instance, it is used in photochemistry for studying the interactions between potential energy surfaces, in computer vision for computing the image of conics seen by a catadioptric camera with a paraboloidal mirror, and in mathematics for computing flows of hypersurfaces of revolution based on constant-volume average curvature.

On the theme of 3D visibility, we follow two main directions of research, one in which the objects of the scenes are polyhedra, the other in which we consider curved objects.

Our recent results on 3D visibility with polyhedral objects have been the following. We obtained new combinatorial and algorithmic results on the set of lines and free
line segments tangent to possibly intersecting arbitrary convex polytopes
. We proved that
kpossibly intersecting convex polyhedra with a total of
nedges admit, in the worst case,
(
n^{2}k^{2})connected components of maximal free line segments tangent to at least four polytopes, significantly improving the previous known results on the subject. We also presented a
O(
n^{2}k^{2}log
n)time and
O(
nk^{2})space algorithm that, given a scene of
kpossibly intersecting convex polyhedra, computes all the minimal free line segments that are tangent to any four of the polytopes and are isolated transversals to the
set of edges they intersect; in particular, we compute at least one line segment per connected component of tangent lines. This algorithm uses simple data structures, is implementable and is
near time-optimal in the worst case. This is a significant improvement over the two previous algorithms, one being not realistically implementable
, the other having poor
(
n^{5})worst-case complexity
.

We proved an important folklore theorem in computer graphics: a polyhedron of complexity
nthat approximates a surface in some reasonable way has silhouettes of expected size
, where the average is taken over all points of view
. This confirms a widely accepted belief in
computer graphics and is the first complexity result for silhouettes of non-convex polyhedra.

Concerning curved objects, we published a characterization of the configurations of four spheres in 3D that admit infinitely many common tangents. Between 2001 and 2005, 7 journal articles investigated simpler variants of this problem (where the spheres are congruent or some spheres are replaced by lines). Our characterization is now complete and elementary: the spheres must have aligned centers and at least one common tangent .

We established Helly-type theorems for the existence of line transversals to disjoint congruent balls in any dimension , answering in the positive a conjecture formulated by Danzer in 1957. Such theorems were known for the special case of the dimensions 2 and 3 , and under certain restrictions on the family of balls, see for instance .

Finally, we proved theoretical bounds and made an experimental assessment of the size of the visibility complex of randomly distributed objects in the plane . We solved the dynamic problem of visibility from a moving viewpoint among points and we presented an algorithm for parabolic ray-shooting .

The main achievement of the last year (2005) has been the completion of the first-ever exact, complete, near-optimal and usable algorithm for parameterizing the intersection of two projective quadrics . This algorithm is a considerable breakthrough on a long-standing open question and, though there is still room for minor improvements, the problem is now largely closed.

This year, we published results demonstrating that our algorithm is practical and that its C++ implementation, named QI, is very efficient . Our software is freely distributed and has found applications in unexpected and unanticipated areas. It computes an exact parameterization of the intersection of two quadrics with integer coefficients of arbitrary size. It correctly identifies, separates and parameterizes all the connected components of the intersection and gives all the relevant topological information. The parameterizations computed are optimal in terms of their defining functions and near-optimal in terms of the size of the extension on which their coefficients are defined.

Since the writing of , we have proposed several (currently unpublished) improvements to our algorithm. First, we have lowered the arithmetic complexity of parameterizing smooth quartics, which is the most complex and time-consuming case. The bound on the size of the coefficients involved is now down to 34 times the size of the input (previous bound was 38), while the observed asymptotic size is 28 times that of the input (previous was 36). Second, we have obtained optimal solutions in place of several of the remaining near-optimal cases in our algorithm. This amounted to deciding whether a given conic with rational coefficients contains rational points and computing one such point if any. We achieved this result by implementing in C++ an algorithm recently proposed by the French mathematician Denis Simon .

In parallel, we have worked on the difficult problem of parameterizing the intersection of quadrics depending on time . At this stage, we only have partial solutions to this problem and many key issues have yet to find satisfactory solutions.

We have also pursued our work on the exact boundary evaluation of quadric-based solids, building upon our work on parameterizations. The theoretical problems are now well understood and an implementation is under way. We should soon obtain our first results and be able to compute the BRep of simple models (a few dozen of volumes) in a matter of seconds.

Finally, we have started working on the problem of computing the medial axis or Voronoi diagram of polyhedra in 3D. Such a diagram is a partition of space into cells, each of which consists of the points closest to one particular object than to any other. We have started by considering the Voronoi diagram of lines. The set of points equidistant to two lines is a quadric and the set of points equidistant to three lines is the intersection of two quadrics. We currently working on characterizing the structure of such diagrams for three lines.

*ARC ARCADIA
*(INRIA investigation grant). ARCADIA is a research project over 2005–2006 regrouping researchers from our group, from the GEOMETRICA project at INRIA Sophia-Antipolis, and
from the Laboratory of geometric and algebraic algorithms at the National University of Athens. The main objective of this cooperation is to contribute to the mathematical foundations of
geometric computing dedicated to quadrics and to validate theoretical advances by robust and efficient implementations.

The financial support was of 49 Keuros over the two years for the three groups and was managed by VEGAS. In addition there was a ministry financial support for one year of postdoc which was offered to Elias Tsigaridas, former PhD student of the group in Athens, who works in collaboration with the three groups. Elias will spend three months from Oct. to Dec. 2006 in GEOMETRICA and will continue with nine months in 2007 in VEGAS.

*ACI Young Researcher*``Effective geometry for realistic visualization of complex scenes''
*.*This is a ministry grant for the period 2003–2006. The main objective of this grant is to rework the theoretical bases of fundamental techniques of computer graphics and rendering
to speed up computations and move towards a better visual and physical realism with emphasis on effective methods and robust calculations. Two problems of particular interest are:
theoretical issues in 3D visibility
,
,
,
,
and robust geometric computations on
low-degree surfaces
,
. The financial support was 12,5 Keuros per
year in 2003-2005 and 4.2 Keuros in 2006.

*Lorraine Region*. The region of Lorraine provided a quarter of PhD grant (4.2 Keuros per year) for our student Linqiao Zhang whom we co-supervise with S. Whitesides, McGill
University. Another quarter was taken from various grants of our group and the remaining half was supported by the research grant of S. Whitesides.

*McGill-ISA associated team*

In the context of this cooperation, INRIA supported VEGAS up to 4 Keuros and McGill Univ supported the Canadian side up to 5 K$CAN in 2005 and in 2006.

*PAI STAR*. This French-Korean ministry program is a one-year-and-a-half program (Aug. 2005–2006) that supports a collaboration between our group and the group of O. Cheong, from the
Korea Advanced Institute for Science and Technology (KAIST), in Daejeon in South Korea. The focus of this cooperation is the study of combinatorial properties of lines in 3
dimensions
and, more generally, computational
geometry
,
,
.

The support was of 8.2 Keuros and 11 Keuros in 2005 and 2006 for each side. In addition, we obtained 11.5 Keuros in 2006 for organizing a French-Korean workshop

We initiated a CNRS-INRIA-UIUC Cooperation

The support for this cooperation is 5 Keuros for each side, managed by E. Colin de Verdière (ENS Ulm) on the French side and by J. Erickson on the American side.

International visitors:

- A. Holmsen (University of Bergen, Norway) visiting researcher, Jan, 1 week;

- S.-W. Cheng (HKUST, Hong-Kong) invited professor, Jan., 2 weeks;

- O. Cheong (KAIST), South Korea, visiting professor, Jan., 3 weeks;

- H.-S. Na (Soongsil Univ., South Korea), visiting professor, Jan., 3 weeks;

- M. Lee (KAIST, South Korea), visiting student, Jan.-Feb., 5 weeks;

- B. Lenhart (Williams College, USA), invited professor, Mar.-Apr., 4 weeks;

- J. Erickson (UIUC, USA), visiting professor, May, 1 week;

- E. Chambers (UIUC, USA), visiting student, May, 1 week;

- S. Thite (Eindhoven Univ., The Netherlands), visiting postdoc, May, 1 week;

- S. Whitesides (McGill Univ., Canada), visiting professor, June, 2 weeks;

Visitors from France:

- E. Colin de Verdière, (ENS, Paris), visiting researcher, May, 1 week.

- F. Lazarus, (LIS, INPG, Grenoble), visiting researcher, May, 1 week;

- D. Russel (INRIA Sophia-Antipolis), visiting postdoc, Sept., 2 days;

- M. Teillaud (INRIA Sophia-Antipolis), visiting researcher, Sept., 1 week;

International visits:

- X. Goaoc: Eindhoven Univ. (The Netherlands), March, 1 week; KAIST (South Korea), May, 2 weeks; Freie & Technische Univ. Berlin (Germany), Dec., 2 weeks;

- H. Everett: KAIST (South Korea), Oct., 1 week;

- S. Lazard: KAIST (South Korea), Oct., 1 week.

- M. Glisse: KAIST (South Korea), Oct.-Nov., 2 weeks;

All of the teaching activities were carried out in Nancy. The research Masters program is a joint degree with Univ. Nancy 1, Univ. Nancy 2 and the engineering school INPL. These three institutes are jointly known as University of Nancy.

Several members of the group, in particular the professors, assistant professors and Ph.D. students, actively teach at Université Nancy 2and INPL. Other members of the group also teach in the Master of Computer Science of Nancy; namely H. Everett and S. Lazard offer the module ``Computational geometry and graphics''. X. Goaoc also intervenes in the Master's program of the geology school at INPL with lectures on the same topic.

Conference program committees:

S. Lazard: SoCG (Symposium on Computational Geometry) in 2006.

S. Petitjean: paper committee of CVPR (IEEE International Conference on Computer Vision and Pattern Recognition) in 2005 and ECCV (European Conference on Computer Vision) in 2006.

Workshop organizations:

H. Everett and S. Lazard co-organized with S. Whitesides (McGill University) the 4th and 5th Workshop on Geometry Problems in Computer Graphics

S. Petitjean organized the 1st and 2nd Arcadia workshops

X. Goaoc co-organized with A. Wolff (Karlsruhe University) the 9th Korean Workshop on Computational Geometry and Geometric Networks

Thesis committees:

H. Everett: T. M. H. Nguyen (Nancy, 2006), S. Hornus (Grenoble, 2006).

CIRTES

The objective of fast prototyping in today's manufacturing industry is to produce a physical model from a virtual one. Such a prototype should be cheap and easy to produce. Two popular technologies are NC machining in which an object is constructed using a 5 degrees of freedom drilling machine and layered manufacturing in which the object is built up from several layers.

Stratoconception is the main layered-manufacturing technique developed at CIRTES. In this technique a polyhedron is manufactured in fairly thick slices (e.g. 1 cm), each slice being manufactured by a two and one-half degrees of freedom tool . Not all objects can be perfectly manufactured that way, because some regions are not accessible to the drill, and choice of drilling direction and position of the slices have a large impact on the quality of the finished product. In fact, if the prototype is made of wood, manufacturing inaccuracies are repaired by manual sanding, a very time-consuming process. Once the positions of the slices have been chosen and the direction of drilling fixed, the error is exactly the same as the volume of the shadow cast on each slice by a light at infinity in the drilling direction.

Computing the optimal slicing strategy and drilling direction so as to minimize the volume of inaccessible regions is an open problem. We have proposed a practical approximate solution to this problem which has been tested with success and is now used by CIRTES . Computing a provably optimal solution remains however an open problem. Note that the notion of 3D visibility is a key in this work since a tool can only drill material that is accessible, that is, that it can ``see''.