Constructive solid geometry

Constructive solid geometry
Venn diagram created with CSG
The source is on the description page.

Constructive solid geometry (CSG) is a technique used in solid modeling. Constructive solid geometry allows a modeler to create a complex surface or object by using Boolean operators to combine objects. Often CSG presents a model or surface that appears visually complex, but is actually little more than cleverly combined or decombined objects.

In 3D computer graphics and CAD CSG is often used in procedural modeling. CSG can also be performed on polygonal meshes, and may or may not be procedural and/or parametric.

Contents

Workings of CSG

The simplest solid objects used for the representation are called primitives. Typically they are the objects of simple shape: cuboids, cylinders, prisms, pyramids, spheres, cones. The set of allowable primitives is limited by each software package. Some software packages allow CSG on curved objects while other packages do not.

It is said that an object is constructed from primitives by means of allowable operations, which are typically Boolean operations on sets: union, intersection and difference.

A primitive can typically be described by a procedure which accepts some number of parameters; for example, a sphere may be described by the coordinates of its center point, along with a radius value. These primitives can be combined into compound objects using operations like these:

Operations in constructive solid geometry
Boolean union Boolean difference Boolean intersection
Demonstration of CSG Union Demonstration of CSG Difference Demonstration of CSG Intersection
The merger of two objects into one. The subtraction of one object from another. The portion common to both objects.

Combining these elementary operations, it is possible to build up objects with high complexity starting from simple ones.

Applications of CSG

CSG objects can be represented by binary trees, where leaves represent primitives, and nodes represent operations. In this figure, the nodes are labeled \cap for intersection, \cup for union, and -\! for difference.

Constructive solid geometry has a number of practical uses. It is used in cases where simple geometric objects are desired, or where mathematical accuracy is important. The Unreal engine uses this system, as does Hammer (the native Source engine level editor), and Torque Game Engine/Torque Game Engine Advanced. CSG is popular because a modeler can use a set of relatively simple objects to create very complicated geometry. When CSG is procedural or parametric, the user can revise their complex geometry by changing the position of objects or by changing the Boolean operation used to combine those objects.

One of the advantages of CSG is that it can easily assure that objects are "solid" or water-tight if all of the primitive shapes are water-tight. This can be important for some manufacturing or engineering computation applications. By comparison, when creating geometry based upon boundary representations, additional topological data is required, or consistency checks must be performed to assure that the given boundary description specifies a valid solid object.

A convenient property of CSG shapes is that it is easy to classify arbitrary points as being either inside or outside the shape created by CSG. The point is simply classified against all the underlying primitives and the resulting boolean expression is evaluated. This is a desirable quality for some applications such as collision detection.

Applications with CSG support

External links



Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Look at other dictionaries:

  • Constructive Solid Geometry — Mit CSG erstelltes Venn Diagramm Der POV Ray Quellcode ist auf der Beschreibungsseite. Constructive Solid Geometry (CSG) oder Konstruktive Festkörpergeometrie ist eine Technik zum Modellieren von …   Deutsch Wikipedia

  • Constructive Solid Geometry — Géométrie de construction de solides Réseau sémantique de la construction CSG d un solide booléen 3D. En infographie, la géométrie de construction de solides (CSG en anglais: Constructive Solid Geometry ) est une branche de la modélisation des… …   Wikipédia en Français

  • Constructive Solid Geometry — Modelo de representación de objetos 3D en forma de árbol basado en dos elementos: 1. Primitivas gráficas (esfera, cubo, cilindro, etc.) que se instancian en el espacio de coordenadas 3D suministrando valoresde traslación (Tx,Ty,Tz), escalado… …   Enciclopedia Universal

  • Solid modeling — The geometry in solid modeling is fully described in 3‑D space; objects can be viewed from any angle. Modeled and ray traced in Cobalt Solid modeling (or modelling) is a consistent set of principles for mathematical and computer modeling of three …   Wikipedia

  • List of geometry topics — This is list of geometry topics, by Wikipedia page.*Geometric shape covers standard terms for plane shapes *List of mathematical shapes covers all dimensions *List of differential geometry topics *List of geometers *See also list of curves, list… …   Wikipedia

  • List of interactive geometry software — Interactive geometry software (IGS, or dynamic geometry environments, DGEs) are computer programs which allow one to create and then manipulate geometric constructions, primarily in plane geometry. In most IGS, one starts construction by putting… …   Wikipedia

  • Euclidean geometry — A Greek mathematician performing a geometric construction with a compass, from The School of Athens by Raphael. Euclidean geometry is a mathematical system attributed to the Alexandrian Greek mathematician Euclid, which he described in his… …   Wikipedia

  • CSG — • Constructive Solid Geometry Modellierungsverfahren für Volumen • Centre Spatial Guyanais, vergl. GSC Weltraumfahrt • Consulting Services Group (Lotus) • Columbus, GA, USA internationale Flughafen Kennung …   Acronyms

  • List of mathematics articles (C) — NOTOC C C closed subgroup C minimal theory C normal subgroup C number C semiring C space C symmetry C* algebra C0 semigroup CA group Cabal (set theory) Cabibbo Kobayashi Maskawa matrix Cabinet projection Cable knot Cabri Geometry Cabtaxi number… …   Wikipedia

  • BRL-CAD — Infobox Software name = BRL CAD http://brlcad.org/gallery/images/galleryLogo sm.gifBRL CAD Logo] http://brlcad.org/gallery/d/235 2/MGED.jpgMGED Screenshot] caption = author = Mike Muuss developer = Army Research Laboratory released = 1984 latest… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”