Constructive Solid Geometry

Slides:



Advertisements
Similar presentations
CSG and Raytracing CPSC 407.
Advertisements

1GR2-00 GR2 Advanced Computer Graphics AGR Lecture 18 Image-based Rendering Final Review of Rendering What We Did Not Cover Learning More...
Constructive Solid Geometry Mel Slater
3D modeling. Modeling and visualization Reality model Picture modeling Visualization.
In this lesson, you will learn how to visualize the 2D cross-sections of 3D shapes Cross Section: the 2 dimensional shape that results from cutting through.
1 of 25 Assignment Orthographic Wireframe Elevation Orthographic Wireframe Plan Orthographic Wireframe End-Elevation Perspective View.
CS447/ Realistic Rendering -- Solids Modeling -- Introduction to 2D and 3D Computer Graphics.
Graphics Graphics Korea University cgvr.korea.ac.kr 3D Object Representation 고려대학교 컴퓨터 그래픽스 연구실.
Course Website: Computer Graphics 18: Ray-tracing.
Chapter 11: Advanced Rendering Part 1 E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley Mohan Sridharan Based on Slides.
Ray Tracing Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts Director, Arts Technology Center University of.
GATE D Object Representations (GATE-540) Dr.Çağatay ÜNDEĞER Instructor Middle East Technical University, GameTechnologies & General Manager SimBT.
18.1 Si31_2001 SI31 Advanced Computer Graphics AGR Lecture 18 Image-based Rendering Light Maps What We Did Not Cover Learning More...
2003 by Jim X. Chen: Introduction to Modeling Jim X. Chen George Mason University.
1 Image-Based Visual Hulls Paper by Wojciech Matusik, Chris Buehler, Ramesh Raskar, Steven J. Gortler and Leonard McMillan [
1 of 19 New Lecture And Lab Information Lectures: –Thursday 13:00 – 14:00 (A322) Does anyone miss lunch? –Friday 15:00 – 16:00 (A28) Labs: –Wednesday 10:00.
Course Website: Computer Graphics 9: Clipping In 3D.
2.1 si SI31 Advanced Computer Graphics AGR Lecture 2 Basic Modelling.
Course Website: Computer Graphics 11: 3D Object Representations – Octrees & Fractals.
IE433 CAD/CAM Computer Aided Design and Computer Aided Manufacturing Part-4 Computer Graphics- CAD Software Industrial Engineering Program King Saud University.
Introduction to Boolean Operations on Free-form Solids CS284, Fall 2004 Seung Wook Kim.
Ray Tracing 1 Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009.
INTRODUCTION TO GEOMETRIC MODELLING 20 September 2010.
Modeling and representation 1 – comparative review and polygon mesh models 2.1 Introduction 2.2 Polygonal representation of three-dimensional objects 2.3.
GMED UNIT 1 Pictorial Drawings.
3D Object Representations 2005, Fall. Course Syllabus Image Processing Modeling Rendering Animation.
SDC PUBLICATIONS © 2012 Chapter 8 Constructive Solid Geometry Concepts Learning Objectives:  Understand Constructive Solid Geometry Concepts  Create.
COMPUTER AIDED DESIGN -(CAD)-3
Kansas State University Department of Computing and Information Sciences CIS 736: Computer Graphics Wednesday, February 23, 2000 William H. Hsu Department.
TECH 104 – Technical Graphics Communication Week 13: 3D Modeling Basics.
Part 6: Graphics Output Primitives (4) 1.  Another useful construct,besides points, straight line segments, and curves for describing components of a.
Graphics Graphics Korea University cgvr.korea.ac.kr Solid Modeling 고려대학교 컴퓨터 그래픽스 연구실.
Copyright © Curt Hill Visualization of 3D Worlds How are these images described?
Copyright Planchard 2012 Boolean Operation Stephen H. Simmons TDR 200.
Representation and modeling of 3D objects (basic concepts) FMFI UK Katedra počítačovej grafiky a spracovania obrazu Marek.
Visual Computing Geometric Modelling 1 INFO410 & INFO350 S2 2015
Ray Tracing. 2 Introduction OpenGL is based on a pipeline model in which primitives are rendered one at time ­No shadows (except by tricks or multiple.
PARALLEL PROJECTION PROJECTION MAPPING METHODS OF PROJECTION PARALLEL PROJECTION.
1 CS 430/585 Computer Graphics I 3D Modeling: Subdivision Surfaces & Solid Modeling Week 9, Lecture 17 David Breen, William Regli and Maxim Peysakhov Geometric.
CS 480/680 Computer Graphics Compositing and Blending Dr. Frederick C Harris, Jr.
Three-Dimensional Object Representation
Constructive Solid Geometry Ray Tracing CSG Models
Geometrically Bounded Wireframe AIC (Part 510) Grouping of curves relevant for 3-dimensional wireframe modeling without topological constructs Elementary.
3D Object Representations 2011, Fall. Introduction What is CG?  Imaging : Representing 2D images  Modeling : Representing 3D objects  Rendering : Constructing.
Solid Modeling Dr. Scott Schaefer.
3D Object Representations 2009, Fall. Introduction What is CG?  Imaging : Representing 2D images  Modeling : Representing 3D objects  Rendering : Constructing.
Lesson Plan: Drafting and Design J6-2. What is 3D solid modeling? How do 3D solid modeling programs work?
TECH 104 – Technical Graphics Communication Week 12: 3D Modeling Basics.
Design and Communication Graphics Principles of Transformation Geometry and their applications.
3D Rendering 2016, Fall.
Constructive Solid Geometry CSG (Geometri Padat Konstruktif)
Geometric Transformations Hearn & Baker Chapter 5
Ray Tracing Ed Angel Professor Emeritus of Computer Science
Geometry- 3 Dimensional Shapes Solid Figures
3D Modeling Basics Three basic types of 3D CAD models:
3D Object Representations
3D Object Representation
3D Modeling in AutoCAD.
Licensed Electrical & Mechanical Engineer
Computer Graphics 9: Clipping In 3D
Geometry- 3 Dimensional Shapes Solid Figures
Lecture 27: Solid Modeling
Design and Communication Graphics
Chapter 3 Constructive Solid Geometry Concepts
Hierarchical Modeling & Constructive Solid Geometry
Work Features Work features are tools that help create and position features by providing points, lines, and planes when current geometry is not sufficient.
3D Object Representation
Overview of Modeling 김성남.
Work Features Work features are tools that help create and position features by providing points, lines, and planes when current geometry is not sufficient.
Presentation transcript:

Constructive Solid Geometry

Constructive Solid Geometry Methods Constructive Solid Geometry (CSG) performs solid modelling by generating a new object from two three dimensional objects using a set operation Valid set operations include Union Intersection Difference

CSG Operations Primitives: Union: Intersection: Difference:

Constructive Solid Geometry Methods (cont…) Difference Intersection

Constructive Solid Geometry Methods (cont…) CSG usually starts with a small set of primitives such as blocks, pyramids, spheres and cones Two objects re initially created and combined using some set operation to create a new object This object can then be combined with another primitive to make another new object This process continues until modelling complete

Constructive Solid Geometry Methods (cont…) CSG models are usually represented as CSG trees CSG Object oper1 obj1 obj2 oper3 obj4 oper2 obj3

Constructive Solid Geometry Methods (cont…)

Ray-Casting Ray-casting is typically used to implement CSG operators when objects are described with boundary representations Ray casting is applied by determining the objects that are intersected by a set of parallel lines emanating from the xy plane along the z axis The xy plane is referred to as the firing plane

Ray-Casting (cont…) Images taken from Hearn & Baker, “Computer Graphics with OpenGL” (2004)

Ray-Casting (cont…) Surface intersections along each ray are calculated and these are sorted according to distance from the firing plane The surface limits for the composite object are then determined by the specified set operation

Ray Casting Example Images taken from Hearn & Baker, “Computer Graphics with OpenGL” (2004)

CSG Data Structure typedef struct _csgtree } CSGTreePtr; Operator op; Quadric primitive; struct _csgtree *right; struct _csgtree *left; } CSGTreePtr; Each leaf node represents a primitive (usually a quadric primitive). ‘op’ can also be ‘leaf’ rather than a combination operator.

Intersecting a Ray Pseudo code for ray-tree intersection

Intersecting a Ray The result will be a sequence of intersection points along a ray, represented by the parametric values t0, t1, t2, …,tn where there are n intersections Each individual intersection with a solid will result (typically) in two values.

Combine Function Shows how the result of the left and right solids combine together. Note that the set operations therefore occur at a 2D level.

Examples www-2.cs.cmu.edu/afs/cs/misc/rayshade/ all_mach/omega/doc/Examples/jpg/csg.jpg ccvweb.csres.utexas.edu/ccv/projects/VisualEyes/ visualization/domainpara/algebraic2/parameterization/ gallery/Reconstruction/Csg/

Summary Unified representation for quadric surfaces provides a simplicity and elegance for a wide class of shapes. CSG provides a simple methodology for combinations via set operations of solids CSG does not require quadrics, it can work other types of solid representation.