Mathematical Tools in Computer Graphics with C# Implementations Table of Contents

Size: px
Start display at page:

Download "Mathematical Tools in Computer Graphics with C# Implementations Table of Contents"

Transcription

1 Mathematical Tools in Computer Graphics with C# Implementations by Hardy Alexandre, Willi-Hans Steeb, World Scientific Publishing Company, Incorporated, 2008 Table of Contents List of Figures Notation xvii xiii Vectors, Matrices and Transforms 1 Vector Spaces 1 Points and Vectors 4 Homogeneous Coordinates 4 Representing Objects by Points 5 Affine Transformations 5 Introduction and Definitions 5 Scaling 6 Translation 7 Rotation 7 Concatenation of Transforms 10 Projection 11 Quaternions 13 C# Implementation 15 Lighting 23 Shading 23 Affine Transforms and Normal Vectors 24 Local Lighting Models 25

2 The Phong Lighting Model 25 Emissive Properties 26 Ambient Reflection 26 Diffuse Reflection 26 Specular Reflection 27 Multiple Colored Light Sources 28 Attenuation 29 Lights 30 Spot Lights 30 Transparent Objects 31 Cook-Torrance Model 31 Bidirectional Reflectivity 31 Cook-Torrance Model 32 Microfacet Distribution Term 33 Geometric Surface Occlusion Term 33 Fresnel Term 37 Beer-Lambert Law 38 C# Implementation 39 Rasterization 49 Pixels 49 Drawing Lines 49 Bresenham's Algorithm for Lines 50 Drawing Circles 51 Bresenham's Algorithm for Circles 51 Filling 53 Gouraud Shading 54 Rasterization in C# 55 Drawing Pixels 57 Bresenham's Algorithms in C# 57 Fractals 59 Mandelbrot Set 60 Julia Set 62 Iterated Function Systems 64 L-Systems and Fractals 65 Kronecker Product and Fractals 69 Definitions 69 Kronecker Product Fractals 71 Curves 75 Introduction 75 Affine Invariance 76 Convex Hull 77 Lagrange Interpolation 78 C# Implementation 79

3 Bezier Curves 83 Affine Invariance 83 Convex Hull 84 Derivative at Edges 84 Piecewise Continuous Bezier Curves 86 Rendering 87 Rational Bezier Curves 91 Bezier Curves: Conic Sections 91 C# Implementation 91 Catmull-Rom Splines 92 Bessel-Overhauser Splines 93 Tension-Continuity-Bias Splines 93 Uniform B-Splines 94 Affine Invariance 98 Convex Hull 98 Cox-de Boor Formula 98 C# Implementation 99 Non-Uniform B-Splines 99 Interpolating with B-Splines 100 Periodic Interpolation 102 Non-Uniform Rational B-Splines 104 Trigonometric Interpolation 104 METAPOST and Bezier Curves 108

4 METAPOST Example 110 Curvature and Torsion 112 Harmonic Interpolation 117 Interpolation 118 Odd Case 120 Even Case 122 Examples 125 Curvature Plots 132 Numerical Stability 136 Affine Invariance 138 Convex Hull Property 141 C# Implementation of Harmonic Interpolation 141 Chebyshev Polynomials 142 Odd Case 143 Even Case 144 Non-Uniform Harmonic Interpolation 144 Wavelets 153 Introduction 153 One-Dimensional Wavelets 154 Two-Dimensional Wavelets 158 Curves 162 C# Implementation 164

5 Surfaces 167 Parametric Surfaces 167 Tensor Product Surfaces 168 Bezier Surfaces 169 Tensor Product Bezier Surfaces 170 Triangular Bezier Surfaces 171 Rational Bezier Surfaces 173 Bezier Surface Interpolation 173 B-Spline Tensor Product Surfaces 173 B-Spline Surface Interpolation 174 Subdivision Surfaces 177 Loop Subdivision 180 Modified Butterfly Subdivision 183 [radical]3 Subdivision 185 Interpolating [radical]3 Subdivision 187 Catmull-Clark Subdivision 191 Doo-Sabin Subdivision 192 Comparison 195 Interpolation with Subdivision Surfaces 198 Curvature of Surfaces 200 Harmonic Surfaces 206 Tensor Product Surface 206

6 Harmonic Subdivision 207 Local Harmonic Subdivision 208 Local Harmonic Interpolation for Curves 209 Parametric Distance 210 Subdivision Rules 212 Irregular Vertices 214 Boundaries 217 Geometry Images and Parameterization 219 Cutting a Mesh into a Disk 219 Parameterization 222 Rasterization of the Geometry Image 228 Interpolation of Geometry Images 229 Geometry Images - Approximation 237 Rendering 238 Approximating Basis Functions 240 Combined Results 243 Curvature 245 C# Implementation 257 Raytracing 333 Raytracing Process 333 Representation of a Ray 338 Reflection 338 Refraction 339 Intersections 341

7 Sphere 342 Infinite Plane 342 Triangles 343 Effect of Transforms 344 C# Implementation of a Raytracer 344 Implicit Surfaces 368 Sphere Tracing 369 Distance Functions 371 C# Implementation 374 CSG Objects 376 C# Implementation 377 Parametric Surfaces 379 Interval Arithmetic 380 Interval Root Finding - Bisection 381 Interval Root Finding - Newton-Raphson 382 Ray Tracing Harmonic Surfaces 385 Lighting Models 386 Supersampling 386 Regular Supersampling 387 Stochastic Supersampling 387 Adaptive Supersampling 388 Ambient Occlusion 389 Ray Marching 392 Photon Mapping 393 Transport Notation 394 Path Tracing 394 Creating the Photon Map 395 Photon Tracing 396 Photon Map Data Structure 397 Radiance Estimate 399 C# Implementation 401 Radiosity 409 Light Transport Notation 409 Radiosity Matrix 410 Solving for Radiosity Values 411 Solving: Jacobi Method 411 Solving: Gauss-Seidel Iteration 411 Solving: Shooting Method 412 Form Factors 412 Numerical Solution 413 Raytracing Method 413

8 Hemicube Method 413 Rendering 415 C# Implementation 415 Animation 427 Traditional Animation Techniques 427 Keyframing 427 Motion Capture 428 Physics Models 428 Animation of Position 429 Arc length parameterization 430 Orientation 430 Articulated Structures (Kinematics) 431 Forward Kinematics 432 Vertex Blending 433 Inverse Kinematics 433 Mass Spring Systems 434 Particle Systems 435 Free Form Deformations 435 Fluids 436 Navier-Stokes Equations 438 Advection 439 Diffusion 440 Projection 440 Boundary Conditions 441 C# Implementation 441 Free Surface 449 C# Implementation of Free Surfaces 450 Bibliography 459 Index 471

MATHEMATICAL TOOLS IN COMPUTER GRAPHICS WITH C# IMPLEMENTATIONS

MATHEMATICAL TOOLS IN COMPUTER GRAPHICS WITH C# IMPLEMENTATIONS MATHEMATICAL TOOLS IN COMPUTER GRAPHICS WITH C# IMPLEMENTATIONS This page intentionally left blank World Scientific N E W J E R S E Y L O N D O N S I N G A P O R E B E I J I N G S H A N G H A I H O N G

More information

Design considerations

Design considerations Curves Design considerations local control of shape design each segment independently smoothness and continuity ability to evaluate derivatives stability small change in input leads to small change in

More information

CHAPTER 1 Graphics Systems and Models 3

CHAPTER 1 Graphics Systems and Models 3 ?????? 1 CHAPTER 1 Graphics Systems and Models 3 1.1 Applications of Computer Graphics 4 1.1.1 Display of Information............. 4 1.1.2 Design.................... 5 1.1.3 Simulation and Animation...........

More information

Final Exam CS 184: Foundations of Computer Graphics! page 1 of 12!

Final Exam CS 184: Foundations of Computer Graphics! page 1 of 12! Final Exam CS 184: Foundations of Computer Graphics! page 1 of 12! Student Name:! Class Account Username: Instructions: Read them carefully!! The exam begins at 8:10pm and ends at 10:00pm. You must turn

More information

Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL

Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL International Edition Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL Sixth Edition Edward Angel Dave Shreiner Interactive Computer Graphics: A Top-Down Approach with Shader-Based

More information

Computer Graphics I Lecture 11

Computer Graphics I Lecture 11 15-462 Computer Graphics I Lecture 11 Midterm Review Assignment 3 Movie Midterm Review Midterm Preview February 26, 2002 Frank Pfenning Carnegie Mellon University http://www.cs.cmu.edu/~fp/courses/graphics/

More information

COMPUTER AIDED GEOMETRIC DESIGN. Thomas W. Sederberg

COMPUTER AIDED GEOMETRIC DESIGN. Thomas W. Sederberg COMPUTER AIDED GEOMETRIC DESIGN Thomas W. Sederberg January 31, 2011 ii T. W. Sederberg iii Preface This semester is the 24 th time I have taught a course at Brigham Young University titled, Computer Aided

More information

GLOBAL EDITION. Interactive Computer Graphics. A Top-Down Approach with WebGL SEVENTH EDITION. Edward Angel Dave Shreiner

GLOBAL EDITION. Interactive Computer Graphics. A Top-Down Approach with WebGL SEVENTH EDITION. Edward Angel Dave Shreiner GLOBAL EDITION Interactive Computer Graphics A Top-Down Approach with WebGL SEVENTH EDITION Edward Angel Dave Shreiner This page is intentionally left blank. Interactive Computer Graphics with WebGL, Global

More information

EECS 487, Fall 2005 Exam 2

EECS 487, Fall 2005 Exam 2 EECS 487, Fall 2005 Exam 2 December 21, 2005 This is a closed book exam. Notes are not permitted. Basic calculators are permitted, but not needed. Explain or show your work for each question. Name: uniqname:

More information

Curves and Surfaces for Computer-Aided Geometric Design

Curves and Surfaces for Computer-Aided Geometric Design Curves and Surfaces for Computer-Aided Geometric Design A Practical Guide Fourth Edition Gerald Farin Department of Computer Science Arizona State University Tempe, Arizona /ACADEMIC PRESS I San Diego

More information

For each question, indicate whether the statement is true or false by circling T or F, respectively.

For each question, indicate whether the statement is true or false by circling T or F, respectively. True/False For each question, indicate whether the statement is true or false by circling T or F, respectively. 1. (T/F) Rasterization occurs before vertex transformation in the graphics pipeline. 2. (T/F)

More information

Recollection. Models Pixels. Model transformation Viewport transformation Clipping Rasterization Texturing + Lights & shadows

Recollection. Models Pixels. Model transformation Viewport transformation Clipping Rasterization Texturing + Lights & shadows Recollection Models Pixels Model transformation Viewport transformation Clipping Rasterization Texturing + Lights & shadows Can be computed in different stages 1 So far we came to Geometry model 3 Surface

More information

Lahore University of Management Sciences. CS 452 Computer Graphics

Lahore University of Management Sciences. CS 452 Computer Graphics CS 452 Computer Graphics Fall 2015-16 Instructor Murtaza Taj Room No. SSE Block 10-301 Office Hours TBA Email murtaza.taj@lums.edu.pk Telephone 3301 Secretary/TA TBA TA Office Hours TBA Course URL (if

More information

Spring 2012 Final. CS184 - Foundations of Computer Graphics. University of California at Berkeley

Spring 2012 Final. CS184 - Foundations of Computer Graphics. University of California at Berkeley Spring 2012 Final CS184 - Foundations of Computer Graphics University of California at Berkeley Write your name HERE: Write your login HERE: Closed book. You may not use any notes or printed/electronic

More information

CHETTINAD COLLEGE OF ENGINEERING & TECHNOLOGY CS2401 COMPUTER GRAPHICS QUESTION BANK

CHETTINAD COLLEGE OF ENGINEERING & TECHNOLOGY CS2401 COMPUTER GRAPHICS QUESTION BANK CHETTINAD COLLEGE OF ENGINEERING & TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS2401 COMPUTER GRAPHICS QUESTION BANK PART A UNIT I-2D PRIMITIVES 1. Define Computer graphics. 2. Define refresh

More information

Computer Graphics Curves and Surfaces. Matthias Teschner

Computer Graphics Curves and Surfaces. Matthias Teschner Computer Graphics Curves and Surfaces Matthias Teschner Outline Introduction Polynomial curves Bézier curves Matrix notation Curve subdivision Differential curve properties Piecewise polynomial curves

More information

Introduction p. 1 What Is Geometric Modeling? p. 1 Computer-aided geometric design Solid modeling Algebraic geometry Computational geometry

Introduction p. 1 What Is Geometric Modeling? p. 1 Computer-aided geometric design Solid modeling Algebraic geometry Computational geometry Introduction p. 1 What Is Geometric Modeling? p. 1 Computer-aided geometric design Solid modeling Algebraic geometry Computational geometry Representation Ab initio design Rendering Solid modelers Kinematic

More information

Know it. Control points. B Spline surfaces. Implicit surfaces

Know it. Control points. B Spline surfaces. Implicit surfaces Know it 15 B Spline Cur 14 13 12 11 Parametric curves Catmull clark subdivision Parametric surfaces Interpolating curves 10 9 8 7 6 5 4 3 2 Control points B Spline surfaces Implicit surfaces Bezier surfaces

More information

Name: Let the Catmull-Rom curve q(u) be defined by the following control points: p 1 = 0, 1 p 2 = 1, 1 p 3 = 1, 0. p 2. p 1.

Name: Let the Catmull-Rom curve q(u) be defined by the following control points: p 1 = 0, 1 p 2 = 1, 1 p 3 = 1, 0. p 2. p 1. Name: 2 1. Let the Catmull-Rom curve q(u) be defined by the following control points: p 0 = 0, 0 p 1 = 0, 1 p 2 = 1, 1 p 3 = 1, 0 p 4 = 2, 0 y p 1 p 2 p 0 p 3 p 4 x Thus, q(i) =p i for i =1, 2, 3. For

More information

CPSC GLOBAL ILLUMINATION

CPSC GLOBAL ILLUMINATION CPSC 314 21 GLOBAL ILLUMINATION Textbook: 20 UGRAD.CS.UBC.CA/~CS314 Mikhail Bessmeltsev ILLUMINATION MODELS/ALGORITHMS Local illumination - Fast Ignore real physics, approximate the look Interaction of

More information

Introduction to Computer Graphics

Introduction to Computer Graphics Introduction to Computer Graphics James D. Foley Georgia Institute of Technology Andries van Dam Brown University Steven K. Feiner Columbia University John F. Hughes Brown University Richard L. Phillips

More information

Make sure you fill in your name and the above information, and that you sign below. Anonymous tests will not be graded.

Make sure you fill in your name and the above information, and that you sign below. Anonymous tests will not be graded. CS 184: Foundations of Computer Graphics! page 1 of 14 Student Name: Class Account Username: Instructions: Read them carefully! You must turn your exam in when time is an- The exam begins at 7:10pm and

More information

CS2401 COMPUTER GRAPHICS ANNA UNIV QUESTION BANK

CS2401 COMPUTER GRAPHICS ANNA UNIV QUESTION BANK CS2401 Computer Graphics CS2401 COMPUTER GRAPHICS ANNA UNIV QUESTION BANK CS2401- COMPUTER GRAPHICS UNIT 1-2D PRIMITIVES 1. Define Computer Graphics. 2. Explain any 3 uses of computer graphics applications.

More information

CS130 : Computer Graphics Curves (cont.) Tamar Shinar Computer Science & Engineering UC Riverside

CS130 : Computer Graphics Curves (cont.) Tamar Shinar Computer Science & Engineering UC Riverside CS130 : Computer Graphics Curves (cont.) Tamar Shinar Computer Science & Engineering UC Riverside Blending Functions Blending functions are more convenient basis than monomial basis canonical form (monomial

More information

Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include

Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include motion, behavior Graphics is a form of simulation and

More information

- Location: Annenberg Text: Mostly Self-Contained on course Web pages. - Al Barr

- Location: Annenberg Text: Mostly Self-Contained on course Web pages. - Al Barr CS171 Computer Graphics Time: 3pm-3:55pm MW(F) - Location: Annenberg 105 - Text: Mostly Self-Contained on course Web pages Instructor: - Al Barr barradmin@cs.caltech.edu, TAs: - Kevin (Kevli) Li - kevli@caltech.edu

More information

CS354 Computer Graphics Surface Representation IV. Qixing Huang March 7th 2018

CS354 Computer Graphics Surface Representation IV. Qixing Huang March 7th 2018 CS354 Computer Graphics Surface Representation IV Qixing Huang March 7th 2018 Today s Topic Subdivision surfaces Implicit surface representation Subdivision Surfaces Building complex models We can extend

More information

INF3320 Computer Graphics and Discrete Geometry

INF3320 Computer Graphics and Discrete Geometry INF3320 Computer Graphics and Discrete Geometry More smooth Curves and Surfaces Christopher Dyken, Michael Floater and Martin Reimers 10.11.2010 Page 1 More smooth Curves and Surfaces Akenine-Möller, Haines

More information

CS130 : Computer Graphics Curves. Tamar Shinar Computer Science & Engineering UC Riverside

CS130 : Computer Graphics Curves. Tamar Shinar Computer Science & Engineering UC Riverside CS130 : Computer Graphics Curves Tamar Shinar Computer Science & Engineering UC Riverside Design considerations local control of shape design each segment independently smoothness and continuity ability

More information

OXFORD ENGINEERING COLLEGE (NAAC Accredited with B Grade) DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING LIST OF QUESTIONS

OXFORD ENGINEERING COLLEGE (NAAC Accredited with B Grade) DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING LIST OF QUESTIONS OXFORD ENGINEERING COLLEGE (NAAC Accredited with B Grade) DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING LIST OF QUESTIONS YEAR/SEM.: III/V STAFF NAME: T.ELANGOVAN SUBJECT NAME: Computer Graphics SUB. CODE:

More information

Central issues in modelling

Central issues in modelling Central issues in modelling Construct families of curves, surfaces and volumes that can represent common objects usefully; are easy to interact with; interaction includes: manual modelling; fitting to

More information

CS GAME PROGRAMMING Question bank

CS GAME PROGRAMMING Question bank CS6006 - GAME PROGRAMMING Question bank Part A Unit I 1. List the different types of coordinate systems. 2. What is ray tracing? Mention some applications of ray tracing. 3. Discuss the stages involved

More information

COMP3421. Global Lighting Part 2: Radiosity

COMP3421. Global Lighting Part 2: Radiosity COMP3421 Global Lighting Part 2: Radiosity Recap: Global Lighting The lighting equation we looked at earlier only handled direct lighting from sources: We added an ambient fudge term to account for all

More information

Pythagorean - Hodograph Curves: Algebra and Geometry Inseparable

Pythagorean - Hodograph Curves: Algebra and Geometry Inseparable Rida T. Farouki Pythagorean - Hodograph Curves: Algebra and Geometry Inseparable With 204 Figures and 15 Tables 4y Springer Contents 1 Introduction 1 1.1 The Lure of Analytic Geometry 1 1.2 Symbiosis of

More information

Graphics Pipeline 2D Geometric Transformations

Graphics Pipeline 2D Geometric Transformations Graphics Pipeline 2D Geometric Transformations CS 4620 Lecture 8 1 Plane projection in drawing Albrecht Dürer 2 Plane projection in drawing source unknown 3 Rasterizing triangles Summary 1 evaluation of

More information

Physically-Based Modeling and Animation. University of Missouri at Columbia

Physically-Based Modeling and Animation. University of Missouri at Columbia Overview of Geometric Modeling Overview 3D Shape Primitives: Points Vertices. Curves Lines, polylines, curves. Surfaces Triangle meshes, splines, subdivision surfaces, implicit surfaces, particles. Solids

More information

Lecture IV Bézier Curves

Lecture IV Bézier Curves Lecture IV Bézier Curves Why Curves? Why Curves? Why Curves? Why Curves? Why Curves? Linear (flat) Curved Easier More pieces Looks ugly Complicated Fewer pieces Looks smooth What is a curve? Intuitively:

More information

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016 Computergrafik Matthias Zwicker Universität Bern Herbst 2016 Today Curves NURBS Surfaces Parametric surfaces Bilinear patch Bicubic Bézier patch Advanced surface modeling 2 Piecewise Bézier curves Each

More information

Homework #2. Hidden Surfaces, Projections, Shading and Texture, Ray Tracing, and Parametric Curves

Homework #2. Hidden Surfaces, Projections, Shading and Texture, Ray Tracing, and Parametric Curves Computer Graphics Instructor: Brian Curless CSE 457 Spring 2013 Homework #2 Hidden Surfaces, Projections, Shading and Texture, Ray Tracing, and Parametric Curves Assigned: Sunday, May 12 th Due: Thursday,

More information

3D Modeling Parametric Curves & Surfaces. Shandong University Spring 2013

3D Modeling Parametric Curves & Surfaces. Shandong University Spring 2013 3D Modeling Parametric Curves & Surfaces Shandong University Spring 2013 3D Object Representations Raw data Point cloud Range image Polygon soup Surfaces Mesh Subdivision Parametric Implicit Solids Voxels

More information

Subdivision Surfaces

Subdivision Surfaces Subdivision Surfaces 1 Geometric Modeling Sometimes need more than polygon meshes Smooth surfaces Traditional geometric modeling used NURBS Non uniform rational B-Spline Demo 2 Problems with NURBS A single

More information

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics 1/15

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics 1/15 Describing Shapes Constructing Objects in Computer Graphics 1/15 2D Object Definition (1/3) Lines and polylines: Polylines: lines drawn between ordered points A closed polyline is a polygon, a simple polygon

More information

The Rendering Equation & Monte Carlo Ray Tracing

The Rendering Equation & Monte Carlo Ray Tracing Last Time? Local Illumination & Monte Carlo Ray Tracing BRDF Ideal Diffuse Reflectance Ideal Specular Reflectance The Phong Model Radiosity Equation/Matrix Calculating the Form Factors Aj Ai Reading for

More information

Topic 12: Texture Mapping. Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping

Topic 12: Texture Mapping. Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping Topic 12: Texture Mapping Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping Texture sources: Photographs Texture sources: Procedural Texture sources: Solid textures

More information

3D Modeling Parametric Curves & Surfaces

3D Modeling Parametric Curves & Surfaces 3D Modeling Parametric Curves & Surfaces Shandong University Spring 2012 3D Object Representations Raw data Point cloud Range image Polygon soup Solids Voxels BSP tree CSG Sweep Surfaces Mesh Subdivision

More information

Information Coding / Computer Graphics, ISY, LiTH. Splines

Information Coding / Computer Graphics, ISY, LiTH. Splines 28(69) Splines Originally a drafting tool to create a smooth curve In computer graphics: a curve built from sections, each described by a 2nd or 3rd degree polynomial. Very common in non-real-time graphics,

More information

Topic 11: Texture Mapping 11/13/2017. Texture sources: Solid textures. Texture sources: Synthesized

Topic 11: Texture Mapping 11/13/2017. Texture sources: Solid textures. Texture sources: Synthesized Topic 11: Texture Mapping Motivation Sources of texture Texture coordinates Bump mapping, mip mapping & env mapping Texture sources: Photographs Texture sources: Procedural Texture sources: Solid textures

More information

Welcome to COMP 770 (236) Introduction. Prerequisites. Prerequisites

Welcome to COMP 770 (236) Introduction. Prerequisites. Prerequisites Welcome to COMP 770 (236) Introduction Computer Graphics COMP 770 (236) Spring 2007 Instructor: Brandon Lloyd Instructor: Brandon Lloyd Email: blloyd@cs.unc.edu Office: SN349 Office hours: MW 1:00 2:00

More information

CS337 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics. Bin Sheng Representing Shape 9/20/16 1/15

CS337 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics. Bin Sheng Representing Shape 9/20/16 1/15 Describing Shapes Constructing Objects in Computer Graphics 1/15 2D Object Definition (1/3) Lines and polylines: Polylines: lines drawn between ordered points A closed polyline is a polygon, a simple polygon

More information

Dgp _ lecture 2. Curves

Dgp _ lecture 2. Curves Dgp _ lecture 2 Curves Questions? This lecture will be asking questions about curves, their Relationship to surfaces, and how they are used and controlled. Topics of discussion will be: Free form Curves

More information

VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur 603203. DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Year & Semester : III Year, V Semester Section : CSE - 1 & 2 Subject Code : CS6504 Subject

More information

Geometric Modeling of Curves

Geometric Modeling of Curves Curves Locus of a point moving with one degree of freedom Locus of a one-dimensional parameter family of point Mathematically defined using: Explicit equations Implicit equations Parametric equations (Hermite,

More information

Lahore University of Management Sciences. CS 452 Computer Graphics

Lahore University of Management Sciences. CS 452 Computer Graphics CS 452 Computer Graphics Fall 206-7 Instructor Room No. Office Hours Email Murtaza Taj 9-GA TBA murtaza.taj@lums.edu.pk Telephone 330 Secretary/TA TA Office Hours Course URL (if any) TBA TBA LMS Course

More information

SRM INSTITUTE OF SCIENCE AND TECHNOLOGY

SRM INSTITUTE OF SCIENCE AND TECHNOLOGY SRM INSTITUTE OF SCIENCE AND TECHNOLOGY DEPARTMENT OF INFORMATION TECHNOLOGY QUESTION BANK SUB.NAME: COMPUTER GRAPHICS SUB.CODE: IT307 CLASS : III/IT UNIT-1 2-marks 1. What is the various applications

More information

From curves to surfaces. Parametric surfaces and solid modeling. Extrusions. Surfaces of revolution. So far have discussed spline curves in 2D

From curves to surfaces. Parametric surfaces and solid modeling. Extrusions. Surfaces of revolution. So far have discussed spline curves in 2D From curves to surfaces Parametric surfaces and solid modeling CS 465 Lecture 12 2007 Doug James & Steve Marschner 1 So far have discussed spline curves in 2D it turns out that this already provides of

More information

Topic 11: Texture Mapping 10/21/2015. Photographs. Solid textures. Procedural

Topic 11: Texture Mapping 10/21/2015. Photographs. Solid textures. Procedural Topic 11: Texture Mapping Motivation Sources of texture Texture coordinates Bump mapping, mip mapping & env mapping Topic 11: Photographs Texture Mapping Motivation Sources of texture Texture coordinates

More information

Curve and Surface Basics

Curve and Surface Basics Curve and Surface Basics Implicit and parametric forms Power basis form Bezier curves Rational Bezier Curves Tensor Product Surfaces ME525x NURBS Curve and Surface Modeling Page 1 Implicit and Parametric

More information

Intro to Ray-Tracing & Ray-Surface Acceleration

Intro to Ray-Tracing & Ray-Surface Acceleration Lecture 12 & 13: Intro to Ray-Tracing & Ray-Surface Acceleration Computer Graphics and Imaging UC Berkeley Course Roadmap Rasterization Pipeline Core Concepts Sampling Antialiasing Transforms Geometric

More information

Computergrafik. Matthias Zwicker. Herbst 2010

Computergrafik. Matthias Zwicker. Herbst 2010 Computergrafik Matthias Zwicker Universität Bern Herbst 2010 Today Curves NURBS Surfaces Parametric surfaces Bilinear patch Bicubic Bézier patch Advanced surface modeling Piecewise Bézier curves Each segment

More information

CMSC427 Final Practice v2 Fall 2017

CMSC427 Final Practice v2 Fall 2017 CMSC427 Final Practice v2 Fall 2017 This is to represent the flow of the final and give you an idea of relative weighting. No promises that knowing this will predict how you ll do on the final. Some questions

More information

Introduction Ray tracing basics Advanced topics (shading) Advanced topics (geometry) Graphics 2010/2011, 4th quarter. Lecture 11: Ray tracing

Introduction Ray tracing basics Advanced topics (shading) Advanced topics (geometry) Graphics 2010/2011, 4th quarter. Lecture 11: Ray tracing Lecture 11 Ray tracing Introduction Projection vs. ray tracing Projection Ray tracing Rendering Projection vs. ray tracing Projection Ray tracing Basic methods for image generation Major areas of computer

More information

The exam begins at 5:10pm and ends at 8:00pm. You must turn your exam in when time is announced or risk not having it accepted.

The exam begins at 5:10pm and ends at 8:00pm. You must turn your exam in when time is announced or risk not having it accepted. CS 184: Foundations of Computer Graphics page 1 of 11 Student Name: Student ID: Instructions: Read them carefully! The exam begins at 5:10pm and ends at 8:00pm. You must turn your exam in when time is

More information

Review. Stephen J. Guy

Review. Stephen J. Guy Review Stephen J. Guy Overview Pixar short Review last class Review course Area of Graphics Image Processing Rendering Modeling Animation Misc Area of Graphics Image Processing Rendering Modeling Animation

More information

End-Term Examination

End-Term Examination Paper Code: MCA-108 Paper ID : 44108 Second Semester [MCA] MAY-JUNE 2006 Q. 1 Describe the following in brief :- (3 x 5 = 15) (a) QUADRATIC SURFACES (b) RGB Color Models. (c) BSP Tree (d) Solid Modeling

More information

Fall CSCI 420: Computer Graphics. 4.2 Splines. Hao Li.

Fall CSCI 420: Computer Graphics. 4.2 Splines. Hao Li. Fall 2014 CSCI 420: Computer Graphics 4.2 Splines Hao Li http://cs420.hao-li.com 1 Roller coaster Next programming assignment involves creating a 3D roller coaster animation We must model the 3D curve

More information

Graphics and Visualization (GV)

Graphics and Visualization (GV) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Graphics and Visualization (GV) Computer graphics is the term commonly used to describe the computer generation and manipulation

More information

GEOMETRIC TOOLS FOR COMPUTER GRAPHICS

GEOMETRIC TOOLS FOR COMPUTER GRAPHICS GEOMETRIC TOOLS FOR COMPUTER GRAPHICS PHILIP J. SCHNEIDER DAVID H. EBERLY MORGAN KAUFMANN PUBLISHERS A N I M P R I N T O F E L S E V I E R S C I E N C E A M S T E R D A M B O S T O N L O N D O N N E W

More information

Until now we have worked with flat entities such as lines and flat polygons. Fit well with graphics hardware Mathematically simple

Until now we have worked with flat entities such as lines and flat polygons. Fit well with graphics hardware Mathematically simple Curves and surfaces Escaping Flatland Until now we have worked with flat entities such as lines and flat polygons Fit well with graphics hardware Mathematically simple But the world is not composed of

More information

Introduction to Visualization and Computer Graphics

Introduction to Visualization and Computer Graphics Introduction to Visualization and Computer Graphics DH2320, Fall 2015 Prof. Dr. Tino Weinkauf Introduction to Visualization and Computer Graphics Visibility Shading 3D Rendering Geometric Model Color Perspective

More information

The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a

The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a coordinate system and then the measuring of the point with

More information

CS 130 Final. Fall 2015

CS 130 Final. Fall 2015 CS 130 Final Fall 2015 Name Student ID Signature You may not ask any questions during the test. If you believe that there is something wrong with a question, write down what you think the question is trying

More information

COMPUTER GRAPHICS, MULTIMEDIA AND ANIMATION, Second Edition (with CD-ROM) Malay K. Pakhira

COMPUTER GRAPHICS, MULTIMEDIA AND ANIMATION, Second Edition (with CD-ROM) Malay K. Pakhira Computer Graphics, Multimedia and Animation SECOND EDITION Malay K. Pakhira Assistant Professor Department of Computer Science and Engineering Kalyani Government Engineering College Kalyani New Delhi-110001

More information

Curves and Surfaces 1

Curves and Surfaces 1 Curves and Surfaces 1 Representation of Curves & Surfaces Polygon Meshes Parametric Cubic Curves Parametric Bi-Cubic Surfaces Quadric Surfaces Specialized Modeling Techniques 2 The Teapot 3 Representing

More information

Final Exam CS 184: Foundations of Computer Graphics page 1 of 14 Fall 2016 Prof. James O Brien

Final Exam CS 184: Foundations of Computer Graphics page 1 of 14 Fall 2016 Prof. James O Brien Final Exam CS 184: Foundations of Computer Graphics page 1 of 14 Student Name: Student ID: Instructions: Read them carefully The exam begins at 3:10pm and ends at 6:00pm. You must turn your exam in when

More information

6.837 Introduction to Computer Graphics Final Exam Tuesday, December 20, :05-12pm Two hand-written sheet of notes (4 pages) allowed 1 SSD [ /17]

6.837 Introduction to Computer Graphics Final Exam Tuesday, December 20, :05-12pm Two hand-written sheet of notes (4 pages) allowed 1 SSD [ /17] 6.837 Introduction to Computer Graphics Final Exam Tuesday, December 20, 2011 9:05-12pm Two hand-written sheet of notes (4 pages) allowed NAME: 1 / 17 2 / 12 3 / 35 4 / 8 5 / 18 Total / 90 1 SSD [ /17]

More information

Freeform Curves on Spheres of Arbitrary Dimension

Freeform Curves on Spheres of Arbitrary Dimension Freeform Curves on Spheres of Arbitrary Dimension Scott Schaefer and Ron Goldman Rice University 6100 Main St. Houston, TX 77005 sschaefe@rice.edu and rng@rice.edu Abstract Recursive evaluation procedures

More information

CS354 Computer Graphics Ray Tracing. Qixing Huang Januray 24th 2017

CS354 Computer Graphics Ray Tracing. Qixing Huang Januray 24th 2017 CS354 Computer Graphics Ray Tracing Qixing Huang Januray 24th 2017 Graphics Pipeline Elements of rendering Object Light Material Camera Geometric optics Modern theories of light treat it as both a wave

More information

Splines. Parameterization of a Curve. Curve Representations. Roller coaster. What Do We Need From Curves in Computer Graphics? Modeling Complex Shapes

Splines. Parameterization of a Curve. Curve Representations. Roller coaster. What Do We Need From Curves in Computer Graphics? Modeling Complex Shapes CSCI 420 Computer Graphics Lecture 8 Splines Jernej Barbic University of Southern California Hermite Splines Bezier Splines Catmull-Rom Splines Other Cubic Splines [Angel Ch 12.4-12.12] Roller coaster

More information

Parametric curves. Brian Curless CSE 457 Spring 2016

Parametric curves. Brian Curless CSE 457 Spring 2016 Parametric curves Brian Curless CSE 457 Spring 2016 1 Reading Required: Angel 10.1-10.3, 10.5.2, 10.6-10.7, 10.9 Optional Bartels, Beatty, and Barsky. An Introduction to Splines for use in Computer Graphics

More information

Local vs. Global Illumination & Radiosity

Local vs. Global Illumination & Radiosity Last Time? Local vs. Global Illumination & Radiosity Ray Casting & Ray-Object Intersection Recursive Ray Tracing Distributed Ray Tracing An early application of radiative heat transfer in stables. Reading

More information

U.C. Berkeley, EECS, Computer Science FINAL EXAM. Your Class Computer Account: Row: Seat: Your student ID #:

U.C. Berkeley, EECS, Computer Science FINAL EXAM. Your Class Computer Account: Row: Seat: Your student ID #: Page 1 of 10 U.C. Berkeley, EECS, Computer Science CS 184 - Spring 2009 COMPUTER GRAPHICS Prof. C. H. Séquin FINAL EXAM Your Name: Your Class Computer Account: Row: Seat: Your student ID #: INSTRUCTIONS

More information

3D Modeling techniques

3D Modeling techniques 3D Modeling techniques 0. Reconstruction From real data (not covered) 1. Procedural modeling Automatic modeling of a self-similar objects or scenes 2. Interactive modeling Provide tools to computer artists

More information

Sung-Eui Yoon ( 윤성의 )

Sung-Eui Yoon ( 윤성의 ) CS480: Computer Graphics Curves and Surfaces Sung-Eui Yoon ( 윤성의 ) Course URL: http://jupiter.kaist.ac.kr/~sungeui/cg Today s Topics Surface representations Smooth curves Subdivision 2 Smooth Curves and

More information

Today. Anti-aliasing Surface Parametrization Soft Shadows Global Illumination. Exercise 2. Path Tracing Radiosity

Today. Anti-aliasing Surface Parametrization Soft Shadows Global Illumination. Exercise 2. Path Tracing Radiosity Today Anti-aliasing Surface Parametrization Soft Shadows Global Illumination Path Tracing Radiosity Exercise 2 Sampling Ray Casting is a form of discrete sampling. Rendered Image: Sampling of the ground

More information

History of computer graphics

History of computer graphics Ivan Sutherland (1963) - SKETCHPAD History of computer graphics CS 248 - Introduction to Computer Graphics Autumn quarter, 2006 Slides for September 26 lecture pop-up menus constraint-based drawing hierarchical

More information

Computer Animation. Algorithms and Techniques. z< MORGAN KAUFMANN PUBLISHERS. Rick Parent Ohio State University AN IMPRINT OF ELSEVIER SCIENCE

Computer Animation. Algorithms and Techniques. z< MORGAN KAUFMANN PUBLISHERS. Rick Parent Ohio State University AN IMPRINT OF ELSEVIER SCIENCE Computer Animation Algorithms and Techniques Rick Parent Ohio State University z< MORGAN KAUFMANN PUBLISHERS AN IMPRINT OF ELSEVIER SCIENCE AMSTERDAM BOSTON LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO

More information

Introduction to Geometry. Computer Graphics CMU /15-662

Introduction to Geometry. Computer Graphics CMU /15-662 Introduction to Geometry Computer Graphics CMU 15-462/15-662 Assignment 2: 3D Modeling You will be able to create your own models (This mesh was created in Scotty3D in about 5 minutes... you can do much

More information

2001, Denis Zorin. Subdivision Surfaces

2001, Denis Zorin. Subdivision Surfaces 200, Denis Zorin Subdivision Surfaces Example: Loop Scheme What makes a good scheme? recursive application leads to a smooth surface 200, Denis Zorin Example: Loop Scheme Refinement rule 200, Denis Zorin

More information

08 - Designing Approximating Curves

08 - Designing Approximating Curves 08 - Designing Approximating Curves Acknowledgement: Olga Sorkine-Hornung, Alexander Sorkine-Hornung, Ilya Baran Last time Interpolating curves Monomials Lagrange Hermite Different control types Polynomials

More information

Engineering Real- Time Applications with Wild Magic

Engineering Real- Time Applications with Wild Magic 3D GAME ENGINE ARCHITECTURE Engineering Real- Time Applications with Wild Magic DAVID H. EBERLY Geometric Tools, Inc. AMSTERDAM BOSTON HEIDELRERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE

More information

GEOMETRIC LIBRARY. Maharavo Randrianarivony

GEOMETRIC LIBRARY. Maharavo Randrianarivony GEOMETRIC LIBRARY Maharavo Randrianarivony During the last four years, I have maintained a numerical geometric library. The constituting routines, which are summarized in the following list, are implemented

More information

Geometric and Solid Modeling. Problems

Geometric and Solid Modeling. Problems Geometric and Solid Modeling Problems Define a Solid Define Representation Schemes Devise Data Structures Construct Solids Page 1 Mathematical Models Points Curves Surfaces Solids A shape is a set of Points

More information

CSE 167: Introduction to Computer Graphics Lecture #11: Bezier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016

CSE 167: Introduction to Computer Graphics Lecture #11: Bezier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016 CSE 167: Introduction to Computer Graphics Lecture #11: Bezier Curves Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016 Announcements Project 3 due tomorrow Midterm 2 next

More information

Spline Surfaces, Subdivision Surfaces

Spline Surfaces, Subdivision Surfaces CS-C3100 Computer Graphics Spline Surfaces, Subdivision Surfaces vectorportal.com Trivia Assignment 1 due this Sunday! Feedback on the starter code, difficulty, etc., much appreciated Put in your README

More information

Topics and things to know about them:

Topics and things to know about them: Practice Final CMSC 427 Distributed Tuesday, December 11, 2007 Review Session, Monday, December 17, 5:00pm, 4424 AV Williams Final: 10:30 AM Wednesday, December 19, 2007 General Guidelines: The final will

More information

Raytracing CS148 AS3. Due :59pm PDT

Raytracing CS148 AS3. Due :59pm PDT Raytracing CS148 AS3 Due 2010-07-25 11:59pm PDT We start our exploration of Rendering - the process of converting a high-level object-based description of scene into an image. We will do this by building

More information

HARMONIC INTERPOLATION FOR SMOOTH CURVES AND SURFACES ALEXANDRE HARDY THESIS. submitted in fulfilment of the requirements for the degree

HARMONIC INTERPOLATION FOR SMOOTH CURVES AND SURFACES ALEXANDRE HARDY THESIS. submitted in fulfilment of the requirements for the degree HARMONIC INTERPOLATION FOR SMOOTH CURVES AND SURFACES by ALEXANDRE HARDY THESIS submitted in fulfilment of the requirements for the degree PHILOSOPHIA DOCTOR in APPLIED MATHEMATICS in the FACULTY OF SCIENCE

More information

Topic 9: Lighting & Reflection models 9/10/2016. Spot the differences. Terminology. Two Components of Illumination. Ambient Light Source

Topic 9: Lighting & Reflection models 9/10/2016. Spot the differences. Terminology. Two Components of Illumination. Ambient Light Source Topic 9: Lighting & Reflection models Lighting & reflection The Phong reflection model diffuse component ambient component specular component Spot the differences Terminology Illumination The transport

More information

Real-Time Rendering. Tomas Möller Eric Haines. A K Peters Natick, Massachusetts

Real-Time Rendering. Tomas Möller Eric Haines. A K Peters Natick, Massachusetts Real-Time Rendering Tomas Möller Eric Haines n A K Peters Natick, Massachusetts Contents Preface 1 Introduction 1 1.1 Contents Overview 2 1.2 Notation and Definitions 3 1.2.1 Mathematical Notation 3 1.2.2

More information

Topic 9: Lighting & Reflection models. Lighting & reflection The Phong reflection model diffuse component ambient component specular component

Topic 9: Lighting & Reflection models. Lighting & reflection The Phong reflection model diffuse component ambient component specular component Topic 9: Lighting & Reflection models Lighting & reflection The Phong reflection model diffuse component ambient component specular component Spot the differences Terminology Illumination The transport

More information