A divide and conquer algorithm for medial surface calculation of planar polyhedra
Introduction
The Medial Axis Transform (MAT) surface or Medial Surface (MS) is a topic which has much potential for volumetric reasoning because it is a formal calculation of proximity relationships.
The MAT surface, or simply MS can be thought of as a geometric idealization of an object. The Medial Surface is, by definition, the locus of the centres of ‘Maximal Spheres’ inside the object. The MAT provides a formalized geometric reasoning tool. For Boundary Representation (B-rep) this overcomes the local nature of models and offers various possibilities for analysis and processing. The MAT is, essentially, an idealization of a solid, reflecting the topology of the object. Together with the radius function, it provides a complete geometrical description. The radius function assigns to every point of the MAT the radius of the maximal enclosed sphere centred on the point.
The MAT surface has two mathematical roots, according to Voronoi [27] and to Delaunay [8]. The notion of the MAT appears in the work of Blum [1] for characterizing shape. There are several theoretical investigations for MAT representations. Among the many works on the medial axis, are the work of Wolter [28] (topological properties of the MAT), Brandt [2], [3] and Chiang [4] (analysis of the mathematical properties of the MAT for 2D regions) Montanari [13], Preparata [15], Srinivasan and Nackman [23] and Gursoy [10] (algorithms). Held, Lukacs and Andor [11] put forward an interesting application of medial axis techniques in manufacturing. More modern examples of planar region medial axis calculation are those by Farouki and Ramamurthy [9] and Ramanathan and Gurumoorthy [16].
For solids, there is the work of Hoffmann [12] for CSG objects and, for example, the work of Näf [14] for slimming of cellular objects. These methods, though, are not suitable for B-rep modeling. For this paper the most relevant references are the paper by Sherbrooke, Patrikalakis and Brisson [22], the work of Reddy and Turkiyyah [17] and the paper by Renner and Stroud [21]. A special case of MAT generation was developed by Csabai and Xirouchakis [6]. Other MAT topics are dealt with by Renner and Stroud [19], [20].
Reddy and Turkiyyah [17] consider the MAT of a polyhedral object as a generalized Voronoi diagram of a set of mixed dimensional entities consisting of vertices, bounded edges and bounded faces. In the Reddy and Turkiyyah algorithm an abstract Delaunay triangulation is computed, which reflects the structure of the MAT, but ignores its geometry. Only the geometry of the vertices of the MAT, which is the most expensive part of the computations in the algorithm, are determined. For this purpose Reddy and Turkiyyah determined solutions of a set of nonlinear equations. Reddy and Turkiyyah’s algorithm starts with a triangular facet, corresponding to a convex vertex of the original object and grows the Delaunay structures, or nodes (see Section 2.3) outwards as a connected set of tetrahedra. One limitation of the algorithm was that the MAT structure had to consist of a single connected piece.
The method presented by Sherbrooke, Patrikalakis and Brisson [22] starts from a ‘seam end’ point and marches along an edge of the MAT to find the corresponding junction point. The marching is performed by integrating numerically the differential equation describing the seam, while a check is performed at each step to see if any other boundary element than that determining the current seam (i.e. new boundary element) is to become active. There are similar elements to the Reddy and Turkiyyah algorithm, even though the two algorithms are different. One similarity is the starting point, the seam edge for Sherbrooke et al. and the initial facet for the Reddy and Turkiyyah algorithm. The edge following method, though, generates the edges and the edge geometry in a stepwise manner while the Reddy and Turkiyyah algorithm jumps to points, inferring the edge connection but ignoring its geometry. The difference is a little like the difference between discrete event simulation (Reddy and Turkiyyah) and simulation with uniform time intervals (Sherbrooke et al.).
Renner and Stroud extended the Reddy and Turkiyyah algorithm, allowing multiple pieces of the MAT. An important further development was to identify all start points for wing edges (seam edges in the Sherbrooke et al. terminology), which is a basis for the algorithm described in this paper. This so-called multiple start-point algorithm also made it clear that the tetrahedral structure assumed by Reddy and Turkiyyah is not always the correct form for the Delaunay nodes; the tetrahedra is only the minimal form. Note that here the term ‘Delaunay node’ refers to the structure in dual space of elements corresponding to a critical point of the MAT. Another term might be ‘Delaunay cell’, but the term Delaunay node is preferred here.
Identification of correct Delaunay cells leads to several advantages. Firstly, related elements bounding the same MAT critical point are identified in one step, rather than identifying the same point several times and then having to post- process the MAT to remove degenerate edges. Other advantages are the body offsetting method and the recreation method described in Section 5. These rely on having a correct topological dual, which cannot always be created using the simple tetrahedral structures resulting from the Reddy and Turkiyyah or the Renner and Stroud methods. What both of these methods do is to perform an exhaustive search of combinations of four elements. While this produces a correct looking MAT and is relatively stable, there are some hidden disadvantages when it comes to identifying degeneracies.
Section snippets
Terminology
This section presents a brief explanation of some of the main terms used in this paper.
MAT calculation
Two methods for computing the MAT have been developed. The first is a generalization of the Reddy and Turkiyyah method as reported in Renner and Stroud [18]. The second algorithm, the divide and conquer method, uses general node forms that allow object reconstruction and facilitate other application algorithms. Both algorithms compute the critical points of the medial axis exactly, using the work of Tigyi [26]; see also [21] for a summary. This is similar to the work of Culver et al. [7]. The
MAT calculation examples
This section contains some examples of the MAT calculation.
Offsetting and body recreation
The offsetting procedure involves gluing together all Delaunay nodes corresponding to MAT critical points with a radius greater than the offset value, finding the dual of this compound object and resetting the geometry. For the positive MAT this can be used for analysis. For the negative MAT (the MAT of the negative object) there are possible applications for machining and also process planning using this technique.
conditional_glue_all_adjacent_faces;
create_dual_of_result_body;
Acknowledgements
The authors would like to thank colleagues at LICP, EPFL for discussions concerning the MAT, especially Attila Csabai, Matthias Müller and Gábor Erdős.
References (28)
- et al.
Degenerate point/curve and curve/curve bisectors arising in medial axis computations for planar domains with curved boundaries
Computer-Aided Geometric Design
(1998) - et al.
Constructing medial axis transform of planar domains with curved boundaries
Computer-Aided Design
(2003) - et al.
Computation of 3D skeletons by a generalized Delaunay triangulation technique
Computer-Aided Design
(1995) - Blum H. A transformation for extracting new descriptors of form. In: Whaten-Dunn W, editor. Models for the perception...
- Brandt JW. Theory and applications of the skeleton representation of continuous shapes. Ph.D. dissertation. Davis:...
Describing a solid with the three-dimensional skeleton
- Chiang C-S. The Euclidean distance transform. Ph.D. dissertation. Purdue University;...
Regular polytopes
(1973)- et al.
On medial surface approximations of extrusions
Engineering with Computers
(2004) - Culver T, Keyser J, Manocha D. Accurate computation of the medial axis of a polyhedron. In: Proceedings fifth symposium...
Pocket machining based on contour parallel tool paths generated by means of proximity maps
Computer-Aided Design
Cited by (6)
Geometry of 3D MAT and its application to moulding surfaces
2015, Graphical ModelsCitation Excerpt :In 1982, Nackman [3] first extended this concept to 3D objects. Since then, considerable attentions have been focused either on algorithms [4–7] for computing the MA or geometric properties [3,8–14], and these two aspects interweaved each other. As for the former, the authors have studied the computation of 3D MAT via the saddle point programming method [16].
Research on 3D medial axis transform via the saddle point programming method
2012, CAD Computer Aided DesignCitation Excerpt :Criteria that involved parameters such as angles, ratios, etc. have been introduced to improve the approximation accuracy [8–10]. Stroud et al. [11] presented a divide and conquer approach, in which the modified dual was created and the MA calculation process was simplified into simpler subtasks. Leymarie and Kimia [12] defined the medial scaffold for the MA of a 3D shape with special medial axis points, medial curves and medial sheets, and introduced a method for computing the medial scaffold from unorganized point clouds or other geometric inputs.
Interior Medial Axis Transform computation of 3D objects bound by free-form surfaces
2010, CAD Computer Aided DesignCitation Excerpt :Most algorithms that work for 2D domains may not readily extend to 3D domains. The divide and conquer algorithm has now been extended to 3D polyhedral objects by Stroud et al. [32]. The wavefront propagation algorithm, however, does not appear to generalize easily to three dimensions.
Skeleton computation of orthogonal polyhedra
2011, Eurographics Symposium on Geometry ProcessingSkeleton computation of orthogonal polyhedra
2011, Computer Graphics Forum