
Three-Dimensional Halfspace Constructive Solid Geometry Tree Construction from Implicit Boundary Representations Suzanne F. Buchele Richard H. Crawford Southwestern University The University of Texas at Austin Georgetown, Texas Austin, Texas [email protected] [email protected] ABSTRACT General Terms This paper presents a new method to compute construc- Algorithms, Design tive solid geometry (CSG) tree representations of an object whose faces consist of planar and non-planar surfaces. The Keywords algorithm described accepts as input a valid boundary rep- resentation of an object consisting of piecewise implicit sur- Representation conversion, reverse engineering, geometric faces, and computes a halfspace CSG representation of the and topological representations, product and assembly mod- object. A class of objects that are describable by the sur- eling faces bounding them are valid input for the algorithm of this work, although methods currently exist to compute the 1. INTRODUCTION AND MOTIVATION additional information necessary to process non-describable There are two primary focuses for the conversion of bound- quadric objects as well. This work builds on and comple- ary representations (b-reps) to halfspace Constructive Solid ments the other work in this area, in which dominating half- Geometry (CSG) tree representations, namely the represen- spaces are used to simplify the b-rep to CSG conversion pro- tation of 3-D solids in CAD systems, and reverse engineering cess. We include factored faces to enable the factorization of of 3-D solids. dominating halfspaces throughout the algorithm. Thus, an CAD systems typically use a combination of object rep- efficient disjoint decomposition of the solid is obtained as a resentation techniques, including boundary representations matter of course in the algorithm, so that CSG minimization (b-reps), in which objects' boundaries and other neighbor- is generally not necessary. hood and orientation information is stored, and CSG rep- This work is motivated by reverse engineering of mechan- resentations, in which a tree representation is stored using ical parts, in which a model of a part is recovered from in- solid primitives and Boolean operations [12]. Hybrid CAD formation obtained by some sort of sensing technique (e.g. systems, in which some combination of representations are CAT scanning, laser range finding). The recovery of a valid used in tandem or conjunction with each other in a single CSG-tree description of an object from a boundary repre- CAD system is the norm for current CAD modelers. To sentation of it can provide useful information to an engineer facilitate the most efficient and flexible computations in a in the area of reverse engineering and in other areas related CAD system, the conversion between representations may to solid modeling as well. The CSG tree also provides a rela- be useful. Algorithms are well-known for the CSG to b-rep tively neutral representation that can enhance form feature conversion process, primarily to facilitate rendering of solid recognition and translation. models by the CAD systems. The problem of b-rep to CSG conversion has historically been considered too difficult for general purpose implementation, although fundamental re- search and development of a general purpose b-rep to CSG Categories and Subject Descriptors algorithm has been presented [14, 15, 16, 21]. I.3.5 [Computer Graphics]: Computational Geometry Reverse engineering of mechanical parts is the general pro- and Object Modeling|boundary representations; curve, cess of recovering a model of a physical mechanical object surface, solid, and object representations; J.6 [Computer from information obtained by some sort of sensing tech- Aided Engineering]: [computer-aided design] nique. These sensing techniques include, but are not limited to, CAT and MRI scans, laser rangefinder scans, stereo- scopic sensing, and contact sensing devices. Reverse engi- neering may be needed when parts do not conform to their associated model, or when an original CAD model of the Permission to make digital or hard copies of all or part of this work for part does not exist. Most current advances in reverse en- personal or classroom use is granted without fee provided that copies are gineering of mechanical parts have focused on recovering a not made or distributed for profit or commercial advantage and that copies boundary representation (b-rep) of an object. Recovered bear this notice and the full citation on the first page. To copy otherwise, to boundary representations of these surfaces can vary from republish, to post on servers or to redistribute to lists, requires prior specific a triangulation of points to piecewise parametric surfaces permission and/or a fee. SM'03, June 16–20, 2003, Seattle, Washington, USA. (common representations include parametric spline surfaces Copyright 2003 ACM 1-58113-706-0/03/0006 ...$5.00. and NURBS surfaces) to piecewise algebraic surfaces [5]. For reverse engineering, a boundary representation may fail to g : 3 ! separates 3 into two pieces. Bounded solid sufficiently recover the original geometry of the object due CSG representations operate on a predefined set of canoni- to the varying range of types of surfaces fit, the orientation cal solid primitives which are also regular sets. of surface patches, and inherent limitations in parametric representations. The extraction of a CSG representation of 3. PREVIOUS WORK a solid may be considered a \user friendly" form for the ge- In 2-D, the problem of b-rep to CSG conversion is consid- ometric data in the field of reverse engineering. It is easier ered solved for cases with modest and realistic limitations than a boundary representation of the object for an engineer ([11, 20, 15, 14]). In 3-D, early or limited attempts to obtain to parameterize and manipulate, and could be entered into CSG-type information from b-reps of an object were done CSG, b-rep, and hybrid modeling CAD systems through a by Lin and Chen [9], Woo [22] and Tang and Woo [18, 19], CSG user interface. and Menon and Kim [10] Shapiro and Vossler present a solution to b-rep to half- 2. DEFINITIONS space CSG conversion for 3-D solids [14, 16, 21], in which 3 A halfspace of is a set of the form = f(x; y; z) : they solve the general problem of converting from a bound- 3 g(x; y; z) ≥ 0g for some function g : ! . When the ary representation (b-rep) of a solid to a halfspace CSG function g is restricted to be a plane, then the halfspace as- representation of it, for solids defined as regular subsets of sociated with g is a halfplane. In this work we consider only 3 bounded by quadric surfaces. Central to Shapiro and halfspaces that are non-empty, regular, pathwise connected Vossler's work is the idea of a canonical intersection term. 3 sets in , such that the regularized complement halfspace In 3 (or d for d ≥ 1), a collection of n sets (or, specifi- ∗ , is also a non-empty pathwise connected set (and is reg- cally, halfspaces) partition 3 into 2n subsets (some possibly ular by definition). We refer to the surface associated with empty). We can represent these 2n subsets, or, cells, as in- a halfspace = f(x; y; z) : g(x; y; z) ≥ 0g defined by some tersections of the n halfspaces and their complements. function g, as S = bd( ) = f(x; y; z) : g(x; y; z) = 0g, and Also central to Shapiro and Vossler's work is their De- 3 we call the set S the surface of . We say the surface scribability Theorem ([15, 14, 16, 21]). A set Γ ⊆ is S = f(x; y; z) : g(x; y; z) = 0g defined by the function g describable by halfspaces Ψ = f 1; : : : ; N g if there exists a induces the two halfspaces = f(x; y; z) : g(x; y; z) ≥ 0g (halfspace) CSG expression for Γ containing only halfspaces ∗ and = f(x; y; z) : g(x; y; z) ≤ 0g. Buchele [6] points out in Ψ. Shapiro and Vossler's Describibility Theorem is as fol- that non-degenerate quadric surfaces of a single sheet (ellip- lows: given a set Ψ = f 1; :::; N g of halfspaces such that ∗ ∗ soids, hyperboloids of one sheet, cones, hyperbolic and ellip- bd(Γ) ⊂ S 1 [ · · · [ S N , solid Γ is (halfspace) describable tic paraboloids, and elliptic, hyperbolic, and parabolic cylin- by Ψ iff for each canonical intersection term, all points in the ders) induce two non-empty regular, pathwise connected canonical intersection term have the same point membership sets. classification with respect to Γ. Shapiro and Vossler also use We define a solid to be a regular subset of 3 . The bound- the concept of separating halfspaces. A separating halfspace ary of the solid Γ is denoted bd(Γ). We define the natural is defined as a halfspace that is necessary in the (halfspace) surfaces of a solid Γ to be the minimal set of surfaces ¡ such CSG representation of a solid but is not a natural halfspace that bd(Γ) ⊆ ¡ . A face F of a solid Γ is a subset of a natural of it. Not all solids can be represented as a halfspace CSG surface S of the solid such that F is a maximally connected tree in which leaves consist only of natural halfspaces of the component of bd(Γ). If we denote ¢ to be the set of all faces solid. Shapiro and Vossler [16, 21] present an algorithm to of a solid Γ, then we can define the boundary representation, compute any necessary separating halfspaces to represent or b-rep, of Γ as the union of all faces of the solid Γ, that is, the solid when the solid is not describable by its natural ¢ bd(Γ) = £ F for faces F 2 . halfspaces alone The surfaces used in the definition of the boundary, faces, Shapiro and Vossler point out that dominating halfspaces and b-rep of a solid are typically defined either paramet- can simplify the CSG representation of a solid if factored out rically or implicitly.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages10 Page
-
File Size-