Elsevier

Computers & Graphics

Volume 24, Issue 2, April 2000, Pages 181-190
Computers & Graphics

Technical Section
Computing directional constrained Delaunay triangulations

https://doi.org/10.1016/S0097-8493(99)00153-3Get rights and content

Abstract

In this work, two generalizations of the algorithm for obtaining a constrained Delaunay triangulation of a general planar graph set forth in Vigo (Technical Report LSI-95-UR-R, Universitat Politécnica de Catalunya, 1995; Computer & Graphics 1997;21(2):215–23) are presented. While the first generalization works with elliptical distances, the second one can deal with a set of deforming ellipses associated to each point of the plane. The pseudo-code of the procedures involved in the algorithms is included, the suitability of the algorithms is analyzed, and several examples are given.

Introduction

The aim of this paper is the study and development of simple algorithms to obtain a modified Delaunay triangulation of a general graph. The modification consists in replacing the usual distance criterion (the Euclidean distance in the plane) by a new criterion which includes directionality. This problem emerged while developing a triangulation algorithm for parametric surfaces that is adaptive to the curvature directions of the surface [1].

In other words, the algorithm must create triangles whose shape depends on the curvature of the surface in each direction. The ideal case would be a triangulation whose edges are aligned according to curvature directions, and have length proportional to curvature (long edges in plane regions, short edges in curved regions). For this reason the new algorithm is called the directional CDT algorithm.

Other authors have used the notion of a Delaunay triangulation (DT) generalized for non-usual (Euclidean) distances: an algorithm for obtaining a DT of a set of points using a convex distance is presented in Chew and Drysdale [2]; a generalization of the Voronoi graph and its dual, the Delaunay triangulation, for affine invariant norms, is introduced in Nielson and Foley [3]; and Okabe et al. [4] describe several generalizations of the Voronoi graph for weighted distances. Other approaches that share some similarities with ours are those presented in D'Azzevedo and Simpson [5], Mavriplis [6] and Posenau [7]. However, none of these three proposals accept constraining edges (i.e. the resulting Delaunay triangulation is not constrained).

The proposal of D'Azzevedo and Simpson [5] triangulates a quadratic convex function in such a way that the approximation error is minimized. The authors affirm that this goal is incompatible with the minimization of triangle angles. The proposed algorithm obtains a triangulation of the convex hull of a sampled set of points on the surface minimizing the approximation error. It is based on a well-known method that starts from a given triangulation and swaps all the required edges until the DT is obtained. The generalization given by the authors consists in replacing the swapping edge criterion by a new one that considers the points transformed by an ellipse, unique for the whole surface, which is computed taking the main curvatures of the quadratic surface into account. In Mavriplis [6], a method is developed for obtaining an adaptive mesh of a viscous flow, taking into account a deformation directional function which assigns a vector (a direction and a magnitude) to each point of the plane. This proposal is similar that presented here, because it is based on the modification of a DT algorithm in such a way that it includes directional information, locally deforming the original space. The author affirms that the resulting method can be viewed as a process for constructing a DT where the circumcircles in deformed space correspond to ellipses in the original space. The proposal of Posenau [7] consists in generalizing the idea of circumcircle by any convex “circum-shape”. This results in a DT algorithm that could be used in fluid dynamics FEM applications. The input of the algorithm includes a function that maps a convex circum-shape to each point of the plane. However, the author does not describe the algorithm used for obtaining the triangulation.

The solution proposed in this paper is a generalization of the incremental algorithm presented in Vigo [8], [9], which obtains a constrained Delaunay triangulation (CDT) of a general graph. This algorithm has the advantage of admitting constraining edges; it is also incremental, and therefore new points and vertices can be included in a triangulation making only local rearrangements of the structure, instead of having to recompute the whole triangulation. Furthermore, the resulting algorithm is very simple to implement, and robust and efficient, even when the original graph has many vertices or edges [9].

The rest of the paper is organized as follows: the following section is a review of the procedures involved in the incremental algorithm of Vigo [8], [9]. Section 3 defines the problem to be solved, and presents two generalizations that can deal with elliptical distances for obtaining the triangulation of a general graph. Some examples are presented in Section 4, where the results are analyzed and the behavior of the new algorithms is shown. Finally, conclusions are presented in the last section.

Section snippets

The incremental CDT algorithm

This section is devoted to the review of the incremental algorithm presented in Vigo [9]. As explained, the algorithm works incrementally, and given a planar graph G=(A,V), constructs a Delaunay triangulation of V constrained by the edges of A. It is based on two procedures, one for adding a new point in the interior of a CDT, and the other that enforces a constraining edge between two points of the triangulation. These two procedures are represented in Fig. 1.

Procedure AddPointCDT given the

The directional CDT algorithm

The incremental algorithm for obtaining a CDT of a general graph is based on two procedures: one for adding a new vertex on a triangulation and a second one that forces a constraining edge between two existing vertices of the triangulation (see Vigo [9]). The geometric checks realized by both procedures are to ensure that the Delaunay empty circumcircle criterion are included in the procedure PointInCircumcircle, which tests if a point lies inside the circumcircle of a triangle. Therefore, only

Examples

This section provides some examples of applications of the modified algorithms to a general graph, showing the announced properties about the resulting triangulations.

The first example consists of a graph composed of a concave polygon with a hole and a set of interior points. Fig. 3 shows an example of the application of the modified algorithm to this graph. It is clear that the output triangles have their edges determined by the shape of the deforming ellipse E, long edges are produced in the

Conclusions

Two generalizations of the incremental algorithm for obtaining a CDT of a general graph have been presented. The first generalization allows us to obtain a CDT that works with an elliptical distance. The second algorithm obtains a triangulation in the case where there exists a different deforming ellipse associated to each point of the plane. The problems that may be occasioned by the directional CDT algorithm have been analyzed, because of the multiplicity of solutions in some cases, and a

References (9)

  • M. Vigo et al.

    Directional adaptive surface triangulation

    Computer-Aided Geometric Design

    (1999)
  • Chew LP, Drysdale RL. Voronoi diagrams based on convex distance functions. Technical Report Tech Report PCS-TR86-132,...
  • Nielson GM, Foley TA. A survey of applications of an affine invariant norm. In: Lyche T, Schumaker LL, editors....
  • A. Okabe et al.

    Spatial tessellations. Concepts and applications of Voronoi diagrams

    (1992)
There are more references available in the full text version of this article.

Cited by (0)

View full text