Technology & Engineering

Constructive Solid Geometry

Constructive Solid Geometry (CSG) is a modeling technique used in computer-aided design (CAD) that involves combining simple geometric shapes to create more complex shapes. It allows designers to create complex 3D models by adding, subtracting, or intersecting basic shapes such as cubes, cylinders, and spheres. CSG is widely used in various industries, including architecture, engineering, and manufacturing.

Written by Perlego with AI-assistance

5 Key excerpts on "Constructive Solid Geometry"

  • Engineering Informatics
    eBook - ePub

    Engineering Informatics

    Fundamentals of Computer-Aided Engineering, Second Edition

    • Benny Raphael, Ian F. C. Smith(Authors)
    • 2013(Publication Date)
    • Wiley
      (Publisher)
  • Efficient algorithms exist for storing and processing quadtrees and octrees. For example, Boolean set operations are straightforward.
  • 11.4.6 Constructive Solid Geometry (CSG)

    CSG refers to the creation of complex solid geometries by combining primitives such as boxes, tetrahedrons and pyramids. The process of combination involves Boolean set operations, for example, union (addition), difference (subtraction) and intersection. If the input objects are valid solids, these operations result in objects that are also valid. An example of an invalid solid is one that contains ‘dangling’ boundary points, lines or faces.
    Figure 11.23 illustrates Boolean operations used in CSG. Through the repeated application of these operators, complex solids are created. CSG operations are usually represented by a tree structure in which the history of generation of the solid is stored. The leaf nodes of the tree are primitives such as boxes, tetrahedrons, and pyramids. Intermediate nodes are Boolean set operators or geometric transformation operations such as translation and rotation. Figure 11.24 contains an example of an object created using a CSG tree.
    Figure 11.23
    Illustration of Boolean operations
    Figure 11.24
    (a) A CSG tree and (b) the result of the CSG operations
    The CSG representation is unambiguous but not unique. Each CSG representation models exactly one object; however, an object might have multiple CSG representations.
    Certain tasks, such as detecting whether a point lies inside or outside a solid, are carried out easily using CSG. However, visualization requires deriving a boundary representation from a CSG model. This operation is called boundary evaluation. The CSG primitives have to be converted into boundary models and then these models have to be combined using the Boolean set operations. This is a complex process.
    CSG is a non-intuitive method of defining geometry. Normally, we define an object as a sum (aggregation) of its parts, and many data representations we have examined in chapters 3 and 4 are based on this idea. In CSG, we also define an object in terms of the parts that are missing through the subtraction and intersection operators. Many common shapes such as rounded rectangles are easily defined through these operators. Therefore, most visualization and modelling software support CSG operations. These methods are sometimes called solid operations.
  • Handbook of Discrete and Computational Geometry
    • Csaba D. Toth, Joseph O'Rourke, Jacob E. Goodman, Csaba D. Toth, Joseph O'Rourke, Jacob E. Goodman(Authors)
    • 2017(Publication Date)
    Chapter 56 , as well as the monographs and surveys [Far88,HL93,Hos92].
     
    57.1.1 Constructive Solid Geometry
    GLOSSARY
    • Primitive solids:
      Traditionally: block, sphere, cylinder, cone, and torus. More general primitives are possible.
    • Sweep:
      Volume covered by moving a solid or a closed contour in space.
    • Extrusion:
      Sweep along a straight line segment.
    • Revolution:
      Circular sweep.
    • Regularized Boolean operation:
      The closure of the interior of a set-theoretic union, intersection, or difference.
    • Algebraic halfspace:
      Points such that
      f ( x , y , z ) 0
      where f is an irreducible polynomial.
    • Irreducible polynomial:
      Polynomial that cannot be factored over the complex numbers.
    Constructive Solid Geometry is a special case because it is not only a particular representation of solid shapes, but is also a methodology for composing primitive solids to represent complex solid shapes. Visual representation of a CSG solid, moreover, soon was done converting the CSG representation into boundary representation for faster rendering. In this section, we restrict to the representational aspect of CSG.
    Classical Constructive Solid Geometry (CSG) represents a solid as a set-the-oretic Boolean expression of primitive solid objects, of a simpler structure [RV77]. The traditional CSG primitives are block, sphere, cylinder, cone, and torus. The traditional operations are regularized union, intersection, and difference. A regularized set operation is obtained by taking the closure of the interior of the set-theoretic result.
    Each solid has a default coordinate system that can be changed with a rigid body transformation. A Boolean operation identifies the two coordinate systems of the solids to be combined and makes it the default coordinate system of the resulting solid.
  • Manufacturing
    eBook - ePub

    Manufacturing

    Design, Production, Automation, and Integration

    • Beno Benhabib(Author)
    • 2003(Publication Date)
    • CRC Press
      (Publisher)
    Primitive instancing refers to the scaling of simple geometrical models (primitives) by manipulating one or more of their descriptive parameters, for example, elongating a cylinder, changing the dimensions of a rectangular prism, etc. As will be discussed below in Sec. 4.4, geometric primitives can play an integral role in feature-based design, where a set of (form) features are combined to generate a more complex model. It will also be shown that such primitives can be combined through Boolean operators for Constructive Solid Geometry modeling.
    Due to their simplicity, most geometric primitives can be generated by a sweeping (“extrusion”) process, where a surface is either translated along spatial curve or rotated about it (Fig. 8 ). (The designer must be careful that the end result is a valid solid.) In most cases, solid geometric models generated by a sweeping operation can be converted to construction and boundary representation models.
    FIGURE 8 Sweeping of surfaces.

    4.3.2 Constructive Solid Geometry

    Constructive Solid Geometry (CSG) modelers allow designers to combine a set of primitives through Boolean operations. In the background (transparent to the user), these modelers represent and store the primitives as “half-space” models—these are simple geometric models comprising point sets bounded by a surface, i.e., points in threedimensional space are defined as belonging to the half-space or being excluded. (An example half-space model would be that bounded by a cylindrical surface extending to infinity—points thus would be on and within the volume enveloped by the surface or be on the outside.) There do exist some CAD systems, however, that allow designers to work with bounded primitives, which are indeed a collection of patched half spaces themselves.
    CSG-based solid models are represented as tree (or graph) structures. The leaves of the graph are the primitives, while the nodes that connect the branches are the Boolean operations applied on the individual (leaves) primitives (Fig. 9
  • Handbook of Computer Aided Geometric Design
    • G. Farin, J. Hoschek, M.-S. Kim(Authors)
    • 2002(Publication Date)
    • North Holland
      (Publisher)
    85 ]. By design, the use of CSG is limited by availability of solid primitives and by the necessity to represent and maintain the neighborhood information for points on primitives and their combinations. The latter task is particularly non-trivial for points with non-manifold neighborhoods and/or lying on high-degree tangent surfaces. Complete solutions have been worked out for solids bounded by planar and second degree surfaces, with only limited results available for more complex solids. The attractive properties of CSG include conciseness, guaranteed validity (by definition), computationally convenient Boolean algebraic properties, and natural control of the solid’s shape in terms of high-level parameters defining the solid primitives and their positions and orientations. The relatively simple data structures and the elegant recursive algorithms further contributed to the popularity of CSG in academia and early commercial systems.
    Other constructive representations
    In principle, many other constructions may be added to the lexicon of implicit representations, notably offsetting [94 ], blending [133 ], convolutions [10 ], and other skeletal-based representations, Minkowski operations [25 ],[61 ], and sweeping [37 ],[115 ]. Such constructions have numerous applications in mechanical design, analysis, and planning tasks; they also flourished in computer graphics [113 ] where computational time and guarantee of correctness are often deemed less important than the visually pleasing results. But while such formal definitions are sometimes straightforward, they do not always guarantee the solidity of the result and do not always support a clear point membership query - which came to be regarded as a formal test for any unambiguous representation. The most popular of these constructions is the sweep representation shown in Figure 20.6 (considered a distinct representation scheme in [80 ]), defined for a given set X and continuous motionM (t ) by the infinite union operation:
    Figure 20.6 Sweep(S,M) is a constructive representation for a set of points occupied by S under motion M; a point membership procedure inverts the construction.
    (20.7)
    where
    Xq
    denotes set X positioned at the configuration q. In other words, sweep (X, M ) is the set of all points swept (or occupied) by X at some time during the motion. Sweeps are relatively well understood [2 ] and are useful for variety of representational tasks: computing space occupied by a moving object, material removed by a moving cutter, extrusion of a planar cross-section along one-dimensional path, and so on. The point membership test for sweep follows naturally from the studies of the dual infinite intersection operation and also inverts the construction: p sweep (S, M ) if and only if the inverted trajectory of the point sweep (p, M −1 ) intersects the original solid S [39 ] (see Figure 20.6
  • Mechanical Engineers' Handbook, Volume 2
    eBook - ePub

    Mechanical Engineers' Handbook, Volume 2

    Design, Instrumentation, and Controls

    • Myer Kutz, Myer Kutz(Authors)
    • 2015(Publication Date)
    • Wiley
      (Publisher)
    The nonuniform rational basis spline (NURBS) is a B-spline curve or surface defined by a series of weighted control points and one or more knot vectors. It can exactly represent a wide range of curves such as arcs and conics. The greater flexibility for controlling continuity is one advantage of NURBS. NURBS can precisely model nearly all kinds of surfaces more robustly than the polynomial-based curves that were used in earlier surface models. Surface modeling is more sophisticated than wire frame modeling. Here, the computer still defines the object in terms of a wire frame but generates a surface “skin” to cover the frame, thus giving the illusion of a “real” object. However, because the computer has the image stored in its data as a wire frame representation having no mass, physical properties cannot be calculated directly from the image data. Surface models are very advantageous due to point-to-point data collections usually required for numerical control (NC) programs in computer-aided manufacturing (CAM) applications. Most surface modeling systems also produce the stereolithographic data required for rapid prototyping systems.
    Solid Modeling
    Solid modeling defines the surfaces of an object, with the added attributes of volume and mass. This allows data to be used in calculating the physical properties of the final product. Solid modeling software uses one of two methods to represent solid objects in a computer: Constructive Solid Geometry (CSG) or boundary representation (B-rep).
    The CSG method uses Boolean operations such as union, subtraction, and intersection on two sets of objects to define composite solid models. For example, to create a hole in a cube, a small cylinder can be subtracted from a large cube. See Fig. 5 .
    Figure 5
    Solid subtraction.
    B-rep is a representation of a solid model that defines an object in terms of its surface boundaries: faces, edges, and vertices. In the case of the cube with a hole, a square surface could be created with a hole (as two mirrored surfaces) and then extruded to create the model. See Fig. 6 .
    Figure 6
    Surface solid subtraction.
    Hybrid Solid Modeling
    Hybrid solid modeling allows the user to represent a part with a mixture of wire frame, surface modeling, and solid geometry. The Siemens product lifecycle management (PLM) program offers this representation feature.
    In CAD software, certain features have been developed to minimize the ambiguity of wire frame representations (Fig. 7 ). These features include using dashed lines to represent the background of a view or removing those background lines altogether (Fig. 8
  • Index pages curate the most relevant extracts from our library of academic textbooks. They’ve been created using an in-house natural language model (NLM), each adding context and meaning to key research topics.