Results 1  10
of
33
On the design of CGAL a computational geometry algorithms library
 Softw. – Pract. Exp
, 1998
"... CGAL is a Computational Geometry Algorithms Library written in C++, 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 ..."
Abstract

Cited by 90 (15 self)
 Add to MetaCart
CGAL is a Computational Geometry Algorithms Library written in C++, 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, easeofuse, efficiency, and robustness, and present our approach to reach these goals. Generic programming using templates in C++ plays a central role in the architecture of CGAL. We give a short introduction to generic programming in C++, compare it to the objectoriented programming paradigm, and present examples where both paradigms are used effectively in CGAL. Moreover, we give an overview of the current structure of the CGALlibrary and consider software engineering aspects in the CGALproject. Copyright c ○ 1999 John Wiley & Sons, Ltd. KEY WORDS: computational geometry; software library; C++; generic programming;
Computing a Canonical Polygonal Schema of an Orientable Triangulated Surface
, 2001
"... A closed orientable surface of genus g can be obtained by appropriate identication of pairs of edges of a 4ggon (the polygonal schema). The identied edges form 2g loops on the surface, that are disjoint except for their common endpoint. These loops are generators of both the fundamental group and t ..."
Abstract

Cited by 58 (5 self)
 Add to MetaCart
A closed orientable surface of genus g can be obtained by appropriate identication of pairs of edges of a 4ggon (the polygonal schema). The identied edges form 2g loops on the surface, that are disjoint except for their common endpoint. These loops are generators of both the fundamental group and the homology group of the surface. The inverse problem is concerned with nding a set of 2g loops on a triangulated surface, such that cutting the surface along these loops yields a (canonical) polygonal schema. We present two optimal algorithms for this inverse problem. Both algorithms have been implemented using the CGAL polyhedron data structure.
The Design and Implementation of Planar Maps in CGAL
 Special Issue, selected papers of the Workshop on Algorithm Engineering (WAE
, 1999
"... this paper has been supported in part by ESPRIT IV LTR Projects No. 21957 (CGAL) and No. 28155 (GALIA), by the USAIsrael Binational Science Foundation, by The Israel Science Foundation founded by the Israel Academy of Sciences and Humanities (Center for Geometric Computing and its Applications), by ..."
Abstract

Cited by 39 (17 self)
 Add to MetaCart
this paper has been supported in part by ESPRIT IV LTR Projects No. 21957 (CGAL) and No. 28155 (GALIA), by the USAIsrael Binational Science Foundation, by The Israel Science Foundation founded by the Israel Academy of Sciences and Humanities (Center for Geometric Computing and its Applications), by a FrancoIsraeli research grant "factory of the future" (monitored by AFIRST/France and The Israeli Ministry of Science), and by the Hermann Minkowski  Minerva Center for Geometry at Tel Aviv University
A realtime GPU subdivision kernel
 ACM Trans. Graph
, 2005
"... Figure 1: CatmullClark surfaces fully reevaluated (40 patches, depth 5) at 21 fps on an ATi 9700 mobile graphics chip. By organizing the control mesh of subdivision in texture memory so that irregularities occur strictly inside independently refinable fragment meshes, all major features of subdivis ..."
Abstract

Cited by 37 (4 self)
 Add to MetaCart
Figure 1: CatmullClark surfaces fully reevaluated (40 patches, depth 5) at 21 fps on an ATi 9700 mobile graphics chip. By organizing the control mesh of subdivision in texture memory so that irregularities occur strictly inside independently refinable fragment meshes, all major features of subdivision algorithms can be realized in the framework of highly parallel stream processing. Our implementation of CatmullClark subdivision as a GPU kernel in programmable graphics hardware can model features like semismooth creases and global boundaries; and a simplified version achieves nearrealtime depthfive reevaluation of moderatesized subdivision meshes. The approach is easily adapted to other refinement patterns, such as Loop, DooSabin or √ 3 and it allows for postprocessing with additional shaders.
Exact and efficient construction of Minkowski sums of convex polyhedra with applications
 In Proc. 8th Workshop Alg. Eng. Exper. (Alenex’06
, 2006
"... We present an exact implementation of an efficient algorithm that computes Minkowski sums of convex polyhedra in R 3. Our implementation is complete in the sense that it does not assume general position. Namely, it can handle degenerate input, and it produces exact results. We also present applicati ..."
Abstract

Cited by 33 (9 self)
 Add to MetaCart
We present an exact implementation of an efficient algorithm that computes Minkowski sums of convex polyhedra in R 3. Our implementation is complete in the sense that it does not assume general position. Namely, it can handle degenerate input, and it produces exact results. We also present applications of the Minkowskisum computation to answer collision and proximity queries about the relative placement of two convex polyhedra in R 3. The algorithms use a dual representation of convex polyhedra, and their implementation is mainly based on the Arrangement package of Cgal, the Computational Geometry Algorithm Library. We compare our Minkowskisum construction with the only three other methods that produce exact results we are aware of. One is a simple approach that computes the convex hull of the pairwise sums of vertices of two convex polyhedra. The second is based on Nef polyhedra embedded on the sphere, and the third is an outputsensitive approach based on linear programming. Our method is significantly faster. The results of experimentation with a broad family of convex polyhedra are reported. The relevant programs, source code, data sets, and documentation are available at
Isotropic Surface Remeshing
, 2003
"... This paper proposes a new method for isotropic remeshing of triangulated surface meshes. Given a triangulated surface mesh to be resampled and a userspecified density function defined over it, we first distribute the desired number of samples by generalizing error diffusion, commonly used in image ..."
Abstract

Cited by 31 (3 self)
 Add to MetaCart
This paper proposes a new method for isotropic remeshing of triangulated surface meshes. Given a triangulated surface mesh to be resampled and a userspecified density function defined over it, we first distribute the desired number of samples by generalizing error diffusion, commonly used in image halftoning, to work directly on mesh triangles and feature edges. We then use the resulting sampling as an initial configuration for building a weighted centroidal Voronoi tessellation in a conformal parameter space, where the specified density function is used for weighting. We finally create the mesh by lifting the corresponding constrained Delaunay triangulation from parameter space. A precise control over the sampling is obtained through a flexible design of the density function, the latter being possibly lowpass filtered to obtain a smoother gradation. We demonstrate the versatility of our approach through various remeshing examples.
An adaptable and extensible geometry kernel
 In Proc. Workshop on Algorithm Engineering
, 2001
"... ii ..."
Compact representations of simplicial meshes in two and three dimensions
 International Journal of Computational Geometry and Applications
, 2003
"... We describe data structures for representing simplicial meshes compactly while supporting online queries and updates efficiently. Our data structure requires about a factor of five less memory than the most efficient standard data structures for triangular or tetrahedral meshes, while efficiently su ..."
Abstract

Cited by 20 (6 self)
 Add to MetaCart
We describe data structures for representing simplicial meshes compactly while supporting online queries and updates efficiently. Our data structure requires about a factor of five less memory than the most efficient standard data structures for triangular or tetrahedral meshes, while efficiently supporting traversal among simplices, storing data on simplices, and insertion and deletion of simplices. Our implementation of the data structures uses about 5 bytes/triangle in two dimensions (2D) and 7.5 bytes/tetrahedron in three dimensions (3D). We use the data structures to implement 2D and 3D incremental algorithms for generating a Delaunay mesh. The 3D algorithm can generate 100 Million tetrahedrons with 1 Gbyte of memory, including the space for the coordinates and all data used by the algorithm. The runtime of the algorithm is as fast as Shewchuk’s Pyramid code, the most efficient we know of, and uses a factor of 3.5 less memory overall. 1
Code flexibility and program efficiency by genericity: Improving cgal’s arrangements
 In Proc. 12th Annu. Euro. Sympos. Alg
, 2004
"... Abstract. Arrangements of planar curves are fundamental structures in computational geometry. We describe the recent developments in the arrangement package of Cgal, the Computational Geometry Algorithms Library, making it easier to use, to extend and to adapt to a variety of applications. This impr ..."
Abstract

Cited by 19 (13 self)
 Add to MetaCart
Abstract. Arrangements of planar curves are fundamental structures in computational geometry. We describe the recent developments in the arrangement package of Cgal, the Computational Geometry Algorithms Library, making it easier to use, to extend and to adapt to a variety of applications. This improved flexibility of the code does not come at the expense of efficiency as we mainly use genericprogramming techniques, which make dexterous use of the compilation process. To the contrary, we expedited key operations as we demonstrate by experiments. 1
Boolean operations on 3D selective Nef complexes: Data structure, algorithms, and implementation
 IN PROC. 11TH ANNU. EURO. SYMPOS. ALG., VOLUME 2832 OF LNCS
, 2003
"... ..."