Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Constructive solid geometry
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Applications== [[File:Boolean_raytrace.svg|thumb|275px|CSG operations being applied in the context of rays in a [[Ray tracing (graphics)|ray tracer]]]] Constructive solid geometry has a number of practical uses. It is used in cases where simple geometric objects are desired,{{cn|date=November 2014}} or where mathematical accuracy is important.<ref>{{harvtxt|Foley|1996}}, p. 559.</ref> Nearly all engineering CAD packages use CSG (where it may be useful for representing tool cuts, and features where parts must fit together). The [[Quake engine|''Quake'' engine]] and [[Unreal Engine]] both use this system, as does [[Valve Hammer Editor|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.<ref name="bb"/> 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.<ref>{{citation|title=Game Development Tools|editor-first=Marwan|editor-last=Ansari|publisher=CRC Press|year=2011|isbn=9781439867723|contribution=Real-time constructive solid geometry|pages=79β96|url=https://books.google.com/books?id=HKZuaUdmovsC&pg=PA79|first1=Sander|last1=van Rossen|first2=Matthew|last2=Baranowski}}.</ref> This can be important for some manufacturing or engineering computation applications. By comparison, when creating geometry based upon [[boundary representation]]s, additional topological data is required, or consistency checks must be performed to assure that the given boundary description specifies a valid solid object.<ref name="foley"/> 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.<ref name="rt">{{citation|title=An Introduction to Ray Tracing|first=Andrew S.|last=Glassner|publisher=Morgan Kaufmann|year=1989|isbn=9780122861604|page=80|url=https://books.google.com/books?id=YPblYyLqBM4C&pg=PA80}}.</ref> This is a desirable quality for some applications such as [[Ray tracing (graphics)|ray tracing]].<ref name="rt"/>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)