Elsevier

Computer-Aided Design

Volume 36, Issue 11, 15 September 2004, Pages 1013-1027
Computer-Aided Design

Fast swept volume approximation of complex polyhedral models

https://doi.org/10.1016/j.cad.2004.01.004Get rights and content

Abstract

We present an efficient algorithm to approximate the swept volume (SV) of a complex polyhedron along a given trajectory. Given the boundary description of the polyhedron and a path specified as a parametric curve, our algorithm enumerates a superset of the boundary surfaces of SV. The superset consists of ruled and developable surface primitives, and the SV corresponds to the outer boundary of their arrangement. We approximate this boundary by using a five-stage pipeline. This includes computing a bounded-error approximation of each surface primitive, computing unsigned distance fields on a uniform grid, classifying all grid points using fast marching front propagation, iso-surface reconstruction, and topological refinement. We also present a novel and fast algorithm for computing the signed distance of surface primitives as well as a number of techniques based on surface culling, fast marching level-set methods and rasterization hardware to improve the performance of the overall algorithm. We analyze different sources of error in our approximation algorithm and highlight its performance on complex models composed of thousands of polygons. In practice, it is able to compute a bounded-error approximation in tens of seconds for models composed of thousands of polygons sweeping along a complex trajectory.

Introduction

The swept volume (SV) of a solid or a collection of surfaces in Rd is comprised of all points that it traverses during a sweeping motion. The problem of SV computation arises in different applications, including NC machining verification [10], [13], geometric modeling [16], [38], robot workspace analysis [4], [7], collision detection [31], [44], [57], maintainability studies [35], ergonomic design [3], motion planning [47], etc. A more extensive list of potential applications of SV can be found in Ref. [1].

The SV computation problem has been studied in different disciplines for more than four decades. This includes elegant work based on envelope theory, singularity theory, Lie groups, and sweep differential equations on the characterization of the problem. As a result, the mathematical formulation of SV computation is relatively well-understood.

In many applications, the main goal of SV computation is to identify and extract the boundary of SV, in particular, the outer boundary without internal voids. Most of the algorithms for computation of the boundary of SV in Rd are based, either explicitly or implicitly, on the following framework:

  • 1.

    Find all the boundary primitives S that contribute to the outer boundary of SV.

  • 2.

    Compute an arrangement A(S) of S by performing intersection and trimming computations.

  • 3.

    Traverse the arrangement A(S) and extract its outer boundary.1 Here, the outer boundary of an arrangement in Rd is defined as the boundary of a d-dimensional cell, which is reachable from infinity following some continuous path, in the arrangement.

Most of the mathematical work has mainly dealt with characterizing the boundary primitives, given some assumptions on the sweeping path. There is a considerable amount of research in computational geometry on the combinatorial complexity of computing arrangements as well as on surface–surface intersection computations in geometric and solid modeling. However, the underlying combinatorial and algebraic complexity of exact SV computation is very high. Furthermore, the implementations of any algorithms for computing intersections and arrangements need to deal with accuracy and robustness issues. As a result, no practical algorithms are known for exact computation of SV for any arbitrary polyhedron sweeping along a given smooth path.

Given the underlying complexity of exact SV computation, most of the earlier work has focused on approximate techniques. Different algorithms can be characterized based on whether they are limited to 2D objects, or they only compute an image-space projection or visualization of SV from a given viewpoint, or compute a relatively coarse discretization of the boundary primitives followed by the union computation of different configurations of polyhedra along a trajectory. These algorithms are either slow for practical applications, or suffer from robustness problems, or compute a rather coarse approximation of SV.

We present an efficient algorithm to approximate the outer boundary of SVs of complex polyhedral models in R3 along a given trajectory. The algorithm initially enumerates a superset of the boundary primitives of SV, which consists of ruled and developable surfaces [54]. The ruled surface is generated by considering each edge in the original model as a ruling line and the trajectory as a directrix curve. The developable surface is obtained by applying the envelope theory to each moving triangle. Given a formulation of the boundary elements, our algorithm computes an approximation to the resulting arrangement using a five-stage pipeline. Firstly, it computes a bounded-error polygonal approximation of each surface primitive. Secondly, it samples the surface primitives by computing unsigned, directed distance fields along the vertices of a grid. Next it classifies the grid points to be either inside or outside of the surfaces to obtain the signed distance field using a novel algorithm based on marching front propagation. This is followed by iso-surface reconstruction. Finally, the algorithm performs topological refinement, taking into account some of the characterizations of the SV computation. We also present a number of acceleration techniques based on culling of surface primitives, use of interpolation-based rasterization hardware for fast computation of distance field, and a variation of fast marching level-set method for classification of grid points.

Our algorithm computes a bounded-error approximation of the SV and we analyze all sources of error. We have implemented this algorithm on a commodity-based PC with nVidia GeForce 4 graphics card, and benchmarked its performance on complex benchmarks. The underlying polyhedral models consist of thousands of triangles and are sweeping along a complex trajectory corresponding to a parametric curve. The computation of SV takes a few tens of seconds on a 2.4 GHz Pentium IV processor.

As compared to earlier approaches, the main advantages of our technique include:

  • Generality: the algorithm can handle general polyhedral models, and makes no assumptions about the sweep path.

  • Complex Models: the algorithm is directly applicable to complex models composed of a high number of features. Given a trajectory and a bound on the approximation error, the overall complexity increases as a linear function of the input size.

  • Efficiency: the use of culling techniques and algorithms for signed distance field computation significantly improve the running time of the algorithm.

  • Simplicity: the algorithm is relatively simple to implement and does not suffer from robustness problems or degeneracies.

  • Good SV Approximation: our preliminary application of the algorithm to different benchmarks indicates that it can compute a good, bounded-error approximation of the boundary.

The rest of our paper is organized as follows. In Section 2, we briefly review the earlier work on SV computation. Section 3 provides the overview of our approach to SV computation. In Section 4, we present an algorithm to compute the boundary surface primitives of SV. Section 5 describes our approximation algorithm to compute the arrangement of the surface primitives using sampling and reconstruction. We analyze the performance of our algorithm in Section 6 and describe its implementation and performance in Section 7. In Section 8, we conclude our paper and present future work.

Section snippets

Previous work

In this section, we give a brief survey of the work related to SV computation, arrangements, and iso-surface reconstruction based on distance fields.

Overview

In this section, we characterize the mathematical formulation of computing the SV of general polyhedral models in R3 and also give an overview of our approximation scheme.

Surface generation

In this section, we present techniques to compute the candidate surface primitives that contribute to the boundary of SV and compute a bounded error triangulation of each primitive. We also present new techniques for eliminating surface primitives that do not contribute any points to the boundary of the SV.

Sampling and reconstruction

Once we have computed all the surface primitives of SV, we approximate the outer boundary of SV by sampling the surfaces and reconstructing the outer boundary of their arrangement. In this section, we describe the sampling and reconstruction pipeline (see Fig. 2). We compute unsigned distance fields with respect to the surface primitives on a discrete spatial grid. Signed distance fields are obtained by propagating a front around the boundary of the swept volume using a fast marching method.

Analysis of swept volume algorithm

In this section, we analyze the performance of our SV algorithm, and also discuss the sources of errors in the algorithm.

Implementation and performance

In this section, we describe the implementation of our SV algorithm and highlight its performance on different benchmarks.

Comparison with other approaches

In this section, we compare the performance of our algorithm with earlier approximation schemes to estimate the boundary SV.

The algorithms presented in Refs. [7], [43] use a similar surface primitive generation and tessellation technique to enumerate the surface primitives of SV. However, they do not exploit the fact that developable surfaces can be precisely represented as a parametric surface using the envelope theory as provided in Eq. (5). As a result, we are able to derive better error

Summary and future work

We present an efficient, fast algorithm to approximate SV of complex polyhedral models using the distance fields, fast marching propagation method, and iso-surface reconstruction. The algorithm has been benchmarked on a number of complex models with different sweep paths.

Acknowledgements

This research was supported in part by ARO Contract DAAD 19-99-1-0162, NSF awards ACI-9876914, IIS-982167, ACI-0118743, ONR Contracts N00014-01-1-0067 and N00014-01-1-0496, Intel Corporation, and the Ewha womans university research grant of 2003. We thank Kenny Hoff for his HAVOC software, Leif Kobbelt for providing us with his Extended Marching Cubes software, and Dan Halperin and the reviewers for their feedback and suggestions.

Young J. Kim is currently a full-time lecturer of computer science and engineering at Ewha Womans University in Seoul, Korea. He received his BS and MS degrees in computer Science and statistics in 1993 and 1996, respectively, from Seoul National University, and received his PhD degree in computer Science in August 2000 from Purdue University. Before joining Ewha, he has been a postdoctoral research fellow in the department of computer science at the university of North Carolina (UNC) at Chapel

References (57)

  • K. Abdel-Malek et al.

    Analytical boundary of the workspace for general 3-DOF mechanisms

    Int J Robotics Res

    (1997)
  • S. Abrams et al.

    Computing swept volumes

    J Visualization Comput Animation

    (2000)
  • N. Baek et al.

    Three-dimensional topological sweep for computing rotational swept volumes of polyhedral objects

    Int J Comput Geom Appl

    (2000)
  • Blackmore D, Leu MC. A differential equation approach to swept volumes. In: Proceedings of Rensselaer's Second...
  • D. Blackmore et al.

    A singularity theory approach to swept volumes

    Int J Shape Model

    (2000)
  • Boussac S, Crosnier A. Swept volumes generated from deformable objects application to NC verification. In: Proceedings...
  • A.J. Chung et al.

    A simple recursive tessellator for adaptive surface triangulation

    J Graph Tools

    (2000)
  • D. Cohen-Or et al.

    Three-dimensional distance field metamorphosis

    ACM Trans Graph

    (1998)
  • Conkey J, Joy K. Using isosurface methods for visualizing the envelope of a swept trivariate solid. In: Proceedings of...
  • M. de Berg et al.

    Vertical decompositions for triangles in 3-space

    Discrete Comput Geom

    (1996)
  • M. deCarmo

    Differential geometry of curves and surfaces

    (1976)
  • A. Fabri et al.

    The CGAL kernel: a basis for geometric computation

  • S. Frisken et al.

    Adaptively sampled distance fields: a general representation of shapes for computer graphics

    Proceedings of ACM SIGGRAPH

    (2000)
  • S.F.F. Gibson

    Using distance maps for accurate surface representation in sampled volumes

    IEEE Symp Volume Visualization

    (1998)
  • D. Halperin

    Arrangements

  • K. Hoff et al.

    Fast computation of generalized Voronoi diagrams using graphics hardware

    Proceedings of ACM SIGGRAPH

    (1999)
  • Hoff K, Zaferakis A, Lin M, Manocha D. Fast and simple geometric proximity queries using graphics hardware. Proceedings...
  • Y. Huang et al.

    NC milling error assessment and tool path correction

  • Cited by (51)

    • An accurate, efficient envelope approach to modeling the geometric deviation of the machined surface for a specific five-axis CNC machine tool

      2015, International Journal of Machine Tools and Manufacture
      Citation Excerpt :

      The envelope surface of general objects is studied by several approximate methods. Kim et al. [26] approximated the swept volume of a complex polyhedron along a given trajectory. Rossignac et al. [27] computed the envelope surface of a free-form solid by introducing a polyscrew approximation of the screw motion.

    • Autonomous Mobile Robots: Planning, Navigation and Simulation

      2023, Autonomous Mobile Robots: Planning, Navigation and Simulation
    View all citing articles on Scopus

    Young J. Kim is currently a full-time lecturer of computer science and engineering at Ewha Womans University in Seoul, Korea. He received his BS and MS degrees in computer Science and statistics in 1993 and 1996, respectively, from Seoul National University, and received his PhD degree in computer Science in August 2000 from Purdue University. Before joining Ewha, he has been a postdoctoral research fellow in the department of computer science at the university of North Carolina (UNC) at Chapel Hill. His research interests include interactive computer graphics including haptics and collision detection. His research interests include computer graphics, computational geometry, CAGD, interactive video games, and scientific visualization. He has published more than 20 papers in leading conferences and journals in these fields. He also received the best paper award at the ACM Solid Modeling conference in 2003.

    Gokul Varadhan is currently a PhD student in computer science at the University of North Carolina at Chapel Hill. He received his BTech degree in computer science and engineering from the Indian Institute of Technology, Delhi in 2000. During the summers of 1999 and 2002, he was a visiting researcher at Informatik Centrum Dortmund, Germany and AT&T Research Lab, respectively. His research interests include geometric and solid modeling, computer graphics, and visualization. He has published papers in ACM Symposium on Solid Modeling & Applications, IEEE Visualization, SPIE Conference on Visualization and Data Analysis, and Eurographics Symposium on Geometric Processing.

    Ming C. Lin received her BS, MS, PhD degrees in Electrical Engineering and Computer Science in 1988, 1991, 1993, respectively, from the University of California, Berkeley. She is currently an associate professor in the Computer Science Department at the University of North Carolina (UNC), Chapel Hill. Prior to joining UNC, she was an assistant professor in the Computer Science Department at both Naval Postgraduate School and North Carolina A&T State University, and a Program Manager at the US Army Research Office. She received the NSF Young Faculty Career Award in 1995, Honda Research Initiation Award in 1997, UNC/IBM Junior Faculty Development Award in 1999, and UNC Hettleman Award for Scholarly Achievements in 2002. Her research interests include real-time 3D graphics for virtual environments, applied computational geometry, physically-based modeling, robotics and distributed interactive simulation. She has served as a program committee member for many leading conferences on virtual reality, computer graphics, robotics and computational geometry. She was the general chair and program co-chair of the First ACM Workshop on Applied Computational Geometry, the co-chair of 1999 ACM Symposium on Solid Modeling and Applications, the co-chair of the Workshop on Intelligent Human Augementation and Virtual Environments 2003, and the program co-chair of ACM SIGGRAPH/EG Symposium on Computer Animation 2003. She also serves on the Steering Committee of ACM SIGGRAPH/Eurographics Symposium on Computer Animation. She is a guest editor of the International Journal on Computational Geometry and Applications, the co-editor of the book ‘Applied Computation Geometry’, co-editor of an special issue on HAPTIC RENDERING for IEEE Computer Graphics and Applications, and the Category Editor of ACM Computing Reviews in Computer Graphics.

    Dinesh Manocha is currently a professor of computer science at the University of North Carolina at Chapel Hill. He received his BTech degree in computer science and engineering from the Indian Institute of Technology, Delhi in 1987; MS and PhD in computer science at the University of California at Berkeley in 1990 and 1992, respectively. He was selected an Alfred P. Sloan Research Fellow, received NSF Career Award in 1995 and Office of Naval Research Young Investigator Award in 1996, and Hettleman Prize for scholarly achievement at UNC Chapel Hill in 1998. He has also received best paper and panel awards at the ACM SuperComputing, ACM Multimedia, ACM Solid Modeling, IEEE Visualization and Eurographics Conferences. His research interests include geometric and solid modeling, interactive computer graphics, physically-based modeling, virtual environments, robotics and scientific computation and has published more than 120 papers in leading conferences and journals in these areas. He was the guest co-editor of special issues of International Journal of Computational Geometry and Applications. He is a member of the editorial boards of IEEE Transactions on Visualization and Computer Graphics, Applicable Algebra in Engineering, Communication and Computing, and Graphical Models and Imaging Processing.

    View full text