Ray-casting Algebraic Surfaces using the Frustum Form. Eurographics 2008 Crete, Thursday April 17.

Size: px
Start display at page:

Download "Ray-casting Algebraic Surfaces using the Frustum Form. Eurographics 2008 Crete, Thursday April 17."

Transcription

1 Ray-casting Algebraic Surfaces using the Frustum Form Martin Reimers Johan Seland Eurographics 2008 Crete, Thursday April 17.

2 Algebraic Surfaces Zero set of polynomial f : R 3 R f (x, y, z) = f ijk x i y j z k = 0 0 i+j+k d Sphere: x 2 + y 2 + z 2 1 = 0 Classic field of mathematics Very compact representation Renewed interest as geom. rep.

3 Ray-casting Overview Given a view frustum and screen resolution (m + 1) (n + 1) Let each pixel correspond to a ray r pq : [0, 1] R 3 Find first intersection i.e. Back plane n + 1 f (r pq (t)) = 0 Find final pixel color Little brother of ray-tracing m + 1

4 Ray-casting Overview Given a view frustum and screen resolution (m + 1) (n + 1) Let each pixel correspond to a ray r pq : [0, 1] R 3 Find first intersection i.e. Back plane n + 1 f (r pq (t)) = 0 Find final pixel color Little brother of ray-tracing m + 1

5 Ray-casting Overview Given a view frustum and screen resolution (m + 1) (n + 1) Let each pixel correspond to a ray r pq : [0, 1] R 3 Find first intersection i.e. Back plane n + 1 f (r pq (t)) = 0 Find final pixel color Little brother of ray-tracing m + 1

6 Ray-casting: Challenges Conceptually simple - computationally challenging Working directly on f is expensive Better approach: use univariate representation for each ray How to find the ray equations (in Bernstein form) f (r pq (t)) = c pqr Br d (t) = 0 How to find the roots? Embarrassingly parallel - use GPU?

7 Outline Ray coefficient computation Root finding Implementation details Results and Conclusion

8 Parameterizing the View Frustum Idea: Parameterize the view frustum over the unit cube by L(u, v, w) = 1,1,1 i,j,k=0 v ijk B 1 i (u)b 1 j (v)b 1 k (w) w v u

9 Parameterizing the View Frustum Idea: Parameterize the view frustum over the unit cube by L(u, v, w) = 1,1,1 i,j,k=0 v ijk B 1 i (u)b 1 j (v)b 1 k (w) w v u (u, v, 0) is mapped to the front plane

10 Parameterizing the View Frustum Idea: Parameterize the view frustum over the unit cube by L(u, v, w) = 1,1,1 i,j,k=0 v ijk B 1 i (u)b 1 j (v)b 1 k (w) w v u (u, v, 0) is mapped to the front plane (u, v, 1) is mapped to the back plane

11 Parameterizing the View Frustum Idea: Parameterize the view frustum over the unit cube by L(u, v, w) = 1,1,1 i,j,k=0 v ijk B 1 i (u)b 1 j (v)b 1 k (w) v L u w (u, v, 0) is mapped to the front plane (u, v, 1) is mapped to the back plane Rays are mapped to rays (but no longer parallel)

12 The Frustum Form (FF) We call g = f L : [0, 1] 3 R the Frustum Form v f = 0 u L w

13 The Frustum Form (FF) We call g = f L : [0, 1] 3 R the Frustum Form g = 0 v f = 0 u L w g = 0 corresponds to f = 0

14 The Frustum Form (FF) We call g = f L : [0, 1] 3 R the Frustum Form g = 0 v f = 0 u L w g = 0 corresponds to f = 0 g is a tri-degree d polynomial

15 The Frustum Form (FF) We call g = f L : [0, 1] 3 R the Frustum Form g = 0 v f = 0 u L w g = 0 corresponds to f = 0 g is a tri-degree d polynomial Bernstein form g(u, v, w) = d,d,d i,j,k=0 g ijkb d i (u)b d j (v)bd k (w)

16 The Frustum Form (FF) We call g = f L : [0, 1] 3 R the Frustum Form g = 0 v f = 0 u L w g = 0 corresponds to f = 0 g is a tri-degree d polynomial Bernstein form g(u, v, w) = d,d,d i,j,k=0 g ijkb d i (u)b d j (v)bd k (w) Rays are iso-parametric (parallel), ray polynomials of degree d

17 Ray coefficients r pq (t) w v For pixel (p, q) this yields u g(p/m, q/n, w) = d,d,d i,j,k=0 g ijk B d i (p/m)b d j (q/n)b d k (w)

18 Ray coefficients r pq (t) w v For pixel (p, q) this yields g(p/m, q/n, w) = u = d,d,d i,j,k=0 g ijk B d i (p/m)b d j (q/n)b d k (w) d d,d g ijk Bi d ( p m )Bd j ( q n ) B k d (w) k=0 i,j=0 } {{ } c pqk

19 Ray coefficients r pq (t) w v For pixel (p, q) this yields g(p/m, q/n, w) = u = d,d,d i,j,k=0 g ijk B d i (p/m)b d j (q/n)b d k (w) d d,d g ijk Bi d ( p m )Bd j ( q n ) B k d (w) k=0 i,j=0 } {{ } c pqk c pqk d f (r pq (t)) = c pqk Bk d (t) k=0 c pqk are the ray coefficients

20 Outline Ray coefficient computation Root finding Implementation details Results and Conclusion

21 Bernstein Polynomials c pq2 c pq0 c c pq3 pq1 t Ray equations in Bernstein form f (r pq (t)) = d k=0 c pqkbk d(t) Bk d(t) = ( ) d k t k (1 t) d k Numerically optimal [Farouki] Coefficients form control polygon

22 Bernstein Polynomials c pq2 c pq0 c c pq3 pq1 t Ray equations in Bernstein form f (r pq (t)) = d k=0 c pqkbk d(t) Bk d(t) = ( ) d k t k (1 t) d k Numerically optimal [Farouki] Coefficients form control polygon Properties of Control Polygon The function is approximated by the C. P. Variation Diminishing Property #of zeros in polynomial #of zeros in C. P. Control Polygon can be subdivided/refined

23 Numerical Root Finding Algorithms: Repeated refinement of control polygon, either Bézier subdivision [Lane&Riesenfeld 81,Rockwood et Al 89] B-Spline knot insertion [Mørken&Reimers 07]

24 Numerical Root Finding Algorithms: Repeated refinement of control polygon, either Bézier subdivision [Lane&Riesenfeld 81,Rockwood et Al 89] B-Spline knot insertion [Mørken&Reimers 07]

25 Numerical Root Finding Algorithms: Repeated refinement of control polygon, either Bézier subdivision [Lane&Riesenfeld 81,Rockwood et Al 89] B-Spline knot insertion [Mørken&Reimers 07]

26 Numerical Root Finding Algorithms: Repeated refinement of control polygon, either Bézier subdivision [Lane&Riesenfeld 81,Rockwood et Al 89] B-Spline knot insertion [Mørken&Reimers 07]

27 Numerical Root Finding Algorithms: Repeated refinement of control polygon, either Bézier subdivision [Lane&Riesenfeld 81,Rockwood et Al 89] B-Spline knot insertion [Mørken&Reimers 07]

28 Numerical Root Finding Algorithms: Repeated refinement of control polygon, either Bézier subdivision [Lane&Riesenfeld 81,Rockwood et Al 89] B-Spline knot insertion [Mørken&Reimers 07]

29 Numerical Root Finding Algorithms: Repeated refinement of control polygon, either Bézier subdivision [Lane&Riesenfeld 81,Rockwood et Al 89] B-Spline knot insertion [Mørken&Reimers 07]

30 Numerical Root Finding Algorithms: Repeated refinement of control polygon, either Bézier subdivision [Lane&Riesenfeld 81,Rockwood et Al 89] B-Spline knot insertion [Mørken&Reimers 07]

31 Properties of rootfinders Easy to implement Robust and automatic (don t miss any zeros) Quadratic convergence to simple zeros (like Newtons method) Recent extension [Mørken&Reimers] converge quadratically to multiple zeros (e.g. near silhouettes) Knot insertion framework is very flexible, and allow for variations: Prime using neighbor rays/previous frames ( Coherency ) Detect critical points, search for singularities.

32 Anti-aliasing Problem: Silhouette edges fall between rays w At silhouettes g(z) = 0, g w (z) = 0 z p 1 z 0 p 2 v

33 Anti-aliasing Problem: Silhouette edges fall between rays w At silhouettes g(z) = 0, g w (z) = 0 When p 1 miss and p 2 hits Start from minima of g(p 1 ) Use Newton on (g(s), g w (s)) z p 1 z 0 p 2 v

34 Anti-aliasing Problem: Silhouette edges fall between rays w At silhouettes g(z) = 0, g w (z) = 0 When p 1 miss and p 2 hits Start from minima of g(p 1 ) Use Newton on (g(s), g w (s)) Find pixel color by Wus method color(p1 ) = (1 α) color(p 2 ) z p 1 α z 0 p 2 v

35 Anti-aliasing Problem: Silhouette edges fall between rays w At silhouettes g(z) = 0, g w (z) = 0 When p 1 miss and p 2 hits Start from minima of g(p 1 ) Use Newton on (g(s), g w (s)) Find pixel color by Wus method color(p1 ) = (1 α) color(p 2 ) z Internal silhouettes 25% - 50% performance loss p 1 α z 0 p 2 v

36 Outline Ray coefficient computation Root finding Implementation details Results and Conclusion

37 Implementation Use GPUs for parallelism Our algorithm is designed for efficiency on modern hardware Precompute as much as possible Split computations between CPU and GPU for efficiency Also allows controlling the precision We use NVidias CUDA API Same source code for GPU and CPU versions No OpenGL/DirectX involved

38 Calculating the Frustum Form Coefficients We find the coefficients g ijk by interpolation Choose (d + 1) 3 interpolation points v u w

39 Calculating the Frustum Form Coefficients We find the coefficients g ijk by interpolation Choose (d + 1) 3 interpolation points Form tri-tensor F by evaluating f L d g ijk Bi d (u p )Bj d (v q )Bk d (w r ) i,j,k=0 = f (L(u p, v q, w r )) f 022 f 122 f 222 f 021 f 121 f 221 f 020 f 120 f 220 f 012 f 112 f 212 f 011 f 111 f 211 f 010 f 110 f 210 f 002 f 102 f 202 f 001 f 101 f 201 f 000 f 100 f 200

40 Calculating the Frustum Form Coefficients We find the coefficients g ijk by interpolation Choose (d + 1) 3 interpolation points Form tri-tensor F by evaluating f L d g ijk Bi d (u p )Bj d (v q )Bk d (w r ) i,j,k=0 = f (L(u p, v q, w r )) Calculate matrix Ω u = (Bi d (u j )) f 022 f 122 f 222 f 021 f 121 f 221 f 020 f 120 f 220 f 012 f 112 f 212 f 011 f 111 f 211 f 010 f 110 f 210 f 002 f 102 f 202 f 001 f 101 f 201 f 000 f 100 f 200 B0 d (u 0) Bd d(u 0)..... B0 d(u d) Bd d(u d)

41 Calculating the Frustum Form Coefficients We find the coefficients g ijk by interpolation Choose (d + 1) 3 interpolation points Form tri-tensor F by evaluating f L d g ijk Bi d (u p )Bj d (v q )Bk d (w r ) i,j,k=0 = f (L(u p, v q, w r )) Calculate matrix Ω u = (Bi d (u j )) In Einstein notation Ω u ipω v jqω w kr G ijk = F pqr f 022 f 122 f 222 f 021 f 121 f 221 f 020 f 120 f 220 f 012 f 112 f 212 f 011 f 111 f 211 f 010 f 110 f 210 f 002 f 102 f 202 f 001 f 101 f 201 f 000 f 100 f 200 B0 d (u 0) Bd d(u 0)..... B0 d(u d) Bd d(u d)

42 Frustum Form Coefficients cont. Ω u ip Ωv jq Ωw kr G ijk = F pqr Solve as a nested sequence of matrix products G ijk = (Ω w ) 1 kr (Ωv ) 1 jq (Ωu ) 1 ip F prq Ω 1 -matrices are only dependent on d precompute Size of system is small (d + 1) 3 perform in double on CPU Use Chebyshev points for numerical stability Not dependent on f to be a polynomial

43 Ray coefficient computation f (r pq ) = d d,d Bi d ( p m )g ijkbj d ( q n ) B k d (w) k=0 i,j=0 } {{ } c pqk Implemented as matrix products on the GPU

44 Ray coefficient computation f (r pq ) = d d,d Bi d ( p m )g ijkbj d ( q n ) B k d (w) k=0 i,j=0 } {{ } c pqk Implemented as matrix products on the GPU Dedicated CUDA kernel computes 4 slices in one pass d + 1 d + 1 m C k = Bi d G k (Bj d)t m n d + 1 n

45 Root finding computations Each ray is processed by a CUDA thread Memory layout crucial to maximize performance Ensure that memory reads/writes are coalesced Degree d is template parameter to specialize algorithms template<int d> float decasteljau( float t, float* CP ) { float *R[d+1]; float *L[d+1];. } Avoid idle threads by spatial regularity Rays 8 8 threadblock converge in same iteration#

46 Outline Ray coefficient computation Root finding Implementation details Results and Conclusion

47 d = 5, 74 FPS d = 6, 60 FPS d = 6, 45 FPS d = 8, 33 FPS d = 10, 12 FPS d = 16, 3.1 FPS

48 Conclusion: Benefits of the Frustum Form For fixed m, n, d precompute basis functions Reduce algorithmic complexity Evaluation of c pqk requires (d + 1) 2 muls/adds. Evaluation of f requires (d + 1)(d + 2)(d + 3)/6 muls/adds. Univariate ray equations for root finding f (r pq (t)) = d c pqk Bk d (t) = 0 k=0 Bernstein form for robust root finding Sample based methods might miss thin features Interval Methods[Knoll et. al.] are more robust Fast for sparse polynomials

49 Future Work Topologically correct ray-casting Beam tracing Mathematical exploration Surface intersections Singularity detection Performance and stability High degrees use blossoming to find Frustum Form coeffs. Sort rays based on estimated complexity

50 Thank you for listening! Questions?

Real time Ray-Casting of Algebraic Surfaces

Real time Ray-Casting of Algebraic Surfaces Real time Ray-Casting of Algebraic Surfaces Martin Reimers Johan Seland Center of Mathematics for Applications University of Oslo Workshop on Computational Method for Algebraic Spline Surfaces Thursday

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

Ray Casting of Trimmed NURBS Surfaces on the GPU

Ray Casting of Trimmed NURBS Surfaces on the GPU Ray Casting of Trimmed NURBS Surfaces on the GPU Hans-Friedrich Pabst Jan P. Springer André Schollmeyer Robert Lenhardt Christian Lessig Bernd Fröhlich Bauhaus University Weimar Faculty of Media Virtual

More information

Rendering Curves and Surfaces. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico

Rendering Curves and Surfaces. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico Rendering Curves and Surfaces Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico Objectives Introduce methods to draw curves - Approximate

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

1999, Denis Zorin. Ray tracing

1999, Denis Zorin. Ray tracing Ray tracing Ray tracing shadow rays normal reflected ray pixel ray camera normal Ray casting/ray tracing Iterate over pixels, not objects. Effects that are difficult with Z-buffer, are easy with ray tracing:

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

OUTLINE. Quadratic Bezier Curves Cubic Bezier Curves

OUTLINE. Quadratic Bezier Curves Cubic Bezier Curves BEZIER CURVES 1 OUTLINE Introduce types of curves and surfaces Introduce the types of curves Interpolating Hermite Bezier B-spline Quadratic Bezier Curves Cubic Bezier Curves 2 ESCAPING FLATLAND Until

More information

Ray tracing. Computer Graphics COMP 770 (236) Spring Instructor: Brandon Lloyd 3/19/07 1

Ray tracing. Computer Graphics COMP 770 (236) Spring Instructor: Brandon Lloyd 3/19/07 1 Ray tracing Computer Graphics COMP 770 (236) Spring 2007 Instructor: Brandon Lloyd 3/19/07 1 From last time Hidden surface removal Painter s algorithm Clipping algorithms Area subdivision BSP trees Z-Buffer

More information

Closest Points, Moving Surfaces, and Algebraic Geometry

Closest Points, Moving Surfaces, and Algebraic Geometry Closest Points, Moving Surfaces, and Algebraic Geometry Jan B. Thomassen, Pål H. Johansen, and Tor Dokken Abstract. This paper presents a method for computing closest points to a given parametric surface

More information

Single Scattering in Refractive Media with Triangle Mesh Boundaries

Single Scattering in Refractive Media with Triangle Mesh Boundaries Single Scattering in Refractive Media with Triangle Mesh Boundaries Bruce Walter Shuang Zhao Nicolas Holzschuch Kavita Bala Cornell Univ. Cornell Univ. Grenoble Univ. Cornell Univ. Presented at SIGGRAPH

More information

Direct Rendering of Trimmed NURBS Surfaces

Direct Rendering of Trimmed NURBS Surfaces Direct Rendering of Trimmed NURBS Surfaces Hardware Graphics Pipeline 2/ 81 Hardware Graphics Pipeline GPU Video Memory CPU Vertex Processor Raster Unit Fragment Processor Render Target Screen Extended

More information

A MATRIX FORMULATION OF THE CUBIC BÉZIER CURVE

A MATRIX FORMULATION OF THE CUBIC BÉZIER CURVE Geometric Modeling Notes A MATRIX FORMULATION OF THE CUBIC BÉZIER CURVE Kenneth I. Joy Institute for Data Analysis and Visualization Department of Computer Science University of California, Davis Overview

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

Real-Time Ray Tracing Using Nvidia Optix Holger Ludvigsen & Anne C. Elster 2010

Real-Time Ray Tracing Using Nvidia Optix Holger Ludvigsen & Anne C. Elster 2010 1 Real-Time Ray Tracing Using Nvidia Optix Holger Ludvigsen & Anne C. Elster 2010 Presentation by Henrik H. Knutsen for TDT24, fall 2012 Om du ønsker, kan du sette inn navn, tittel på foredraget, o.l.

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

Computer Graphics CS 543 Lecture 13a Curves, Tesselation/Geometry Shaders & Level of Detail

Computer Graphics CS 543 Lecture 13a Curves, Tesselation/Geometry Shaders & Level of Detail Computer Graphics CS 54 Lecture 1a Curves, Tesselation/Geometry Shaders & Level of Detail Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) So Far Dealt with straight lines

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

Refinable C 1 spline elements for irregular quad layout

Refinable C 1 spline elements for irregular quad layout Refinable C 1 spline elements for irregular quad layout Thien Nguyen Jörg Peters University of Florida NSF CCF-0728797, NIH R01-LM011300 T. Nguyen, J. Peters (UF) GMP 2016 1 / 20 Outline 1 Refinable, smooth,

More information

Intro to Modeling Modeling in 3D

Intro to Modeling Modeling in 3D Intro to Modeling Modeling in 3D Polygon sets can approximate more complex shapes as discretized surfaces 2 1 2 3 Curve surfaces in 3D Sphere, ellipsoids, etc Curved Surfaces Modeling in 3D ) ( 2 2 2 2

More information

ABSTRACT TO BE PRESENTED COMPUTATIONAL METHODS FOR ALGEBRAIC SPLINE SURFACES COMPASS II. September 14-16th, 2005

ABSTRACT TO BE PRESENTED COMPUTATIONAL METHODS FOR ALGEBRAIC SPLINE SURFACES COMPASS II. September 14-16th, 2005 ABSTRACT TO BE PRESENTED AT COMPUTATIONAL METHODS FOR ALGEBRAIC SPLINE SURFACES COMPASS II September 14-16th, 2005 CENTRE OF MATHEMATICS FOR APPLICATIONS GAIA II PROJECT IST--2002 35512 UNIVERSITY OF OSLO,

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

Parametric Curves. University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell

Parametric Curves. University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell Parametric Curves University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell Parametric Representations 3 basic representation strategies: Explicit: y = mx + b Implicit: ax + by + c

More information

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

Mathematical Tools in Computer Graphics with C# Implementations Table of Contents 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

More information

Parametric Curves. University of Texas at Austin CS384G - Computer Graphics

Parametric Curves. University of Texas at Austin CS384G - Computer Graphics Parametric Curves University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell Parametric Representations 3 basic representation strategies: Explicit: y = mx + b Implicit: ax + by + c

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

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

Implicit Matrix Representations of Rational Bézier Curves and Surfaces

Implicit Matrix Representations of Rational Bézier Curves and Surfaces Implicit Matrix Representations of Rational Bézier Curves and Surfaces Laurent Busé INRIA Sophia Antipolis, France Laurent.Buse@inria.fr GD/SPM Conference, Denver, USA November 11, 2013 Overall motivation

More information

Fundamentals of Computer Graphics. Lecture 3 Parametric curve and surface. Yong-Jin Liu.

Fundamentals of Computer Graphics. Lecture 3 Parametric curve and surface. Yong-Jin Liu. Fundamentals of Computer Graphics Lecture 3 Parametric curve and surface Yong-Jin Liu liuyongjin@tsinghua.edu.cn Smooth curve and surface Design criteria of smooth curve and surface Smooth and continuity

More information

Geometric Representations. Stelian Coros

Geometric Representations. Stelian Coros Geometric Representations Stelian Coros Geometric Representations Languages for describing shape Boundary representations Polygonal meshes Subdivision surfaces Implicit surfaces Volumetric models Parametric

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

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

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

Bezier Curves, B-Splines, NURBS

Bezier Curves, B-Splines, NURBS Bezier Curves, B-Splines, NURBS Example Application: Font Design and Display Curved objects are everywhere There is always need for: mathematical fidelity high precision artistic freedom and flexibility

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

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

SYSTEMS OF NONLINEAR EQUATIONS

SYSTEMS OF NONLINEAR EQUATIONS SYSTEMS OF NONLINEAR EQUATIONS Widely used in the mathematical modeling of real world phenomena. We introduce some numerical methods for their solution. For better intuition, we examine systems of two

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

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

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

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

On the Optimality of Piecewise Linear Max-norm Enclosures based on Slefes

On the Optimality of Piecewise Linear Max-norm Enclosures based on Slefes On the Optimality of Piecewise Linear Max-norm Enclosures based on Slefes Jörg Peters and Xiaobin Wu Abstract. Subdividable linear efficient function enclosures (Slefes) provide, at low cost, a piecewise

More information

Computational Physics PHYS 420

Computational Physics PHYS 420 Computational Physics PHYS 420 Dr Richard H. Cyburt Assistant Professor of Physics My office: 402c in the Science Building My phone: (304) 384-6006 My email: rcyburt@concord.edu My webpage: www.concord.edu/rcyburt

More information

An introduction to interpolation and splines

An introduction to interpolation and splines An introduction to interpolation and splines Kenneth H. Carpenter, EECE KSU November 22, 1999 revised November 20, 2001, April 24, 2002, April 14, 2004 1 Introduction Suppose one wishes to draw a curve

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

arxiv: v1 [math.na] 5 Jul 2017

arxiv: v1 [math.na] 5 Jul 2017 APPROXIMATE IMPLICITIZATION OF TRIANGULAR BÉZIER SURFACES OLIVER J. D. BARROWCLOUGH AND TOR DOKKEN arxiv:707.0255v [math.na] 5 Jul 207 Abstract. We discuss how Dokken s methods of approximate implicitization

More information

Lecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10

Lecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10 Lecture 25: Bezier Subdivision And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10 1. Divide and Conquer If we are going to build useful

More information

implicit surfaces, approximate implicitization, B-splines, A- patches, surface fitting

implicit surfaces, approximate implicitization, B-splines, A- patches, surface fitting 24. KONFERENCE O GEOMETRII A POČÍTAČOVÉ GRAFICE ZBYNĚK ŠÍR FITTING OF PIECEWISE POLYNOMIAL IMPLICIT SURFACES Abstrakt In our contribution we discuss the possibility of an efficient fitting of piecewise

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

CS-184: Computer Graphics. Today

CS-184: Computer Graphics. Today CS-84: Computer Graphics Lecture #5: Curves and Surfaces Prof. James O Brien University of California, Berkeley V25F-5-. Today General curve and surface representations Splines and other polynomial bases

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

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

Surfaces for CAGD. FSP Tutorial. FSP-Seminar, Graz, November

Surfaces for CAGD. FSP Tutorial. FSP-Seminar, Graz, November Surfaces for CAGD FSP Tutorial FSP-Seminar, Graz, November 2005 1 Tensor Product Surfaces Given: two curve schemes (Bézier curves or B splines): I: x(u) = m i=0 F i(u)b i, u [a, b], II: x(v) = n j=0 G

More information

Implicit Surfaces & Solid Representations COS 426

Implicit Surfaces & Solid Representations COS 426 Implicit Surfaces & Solid Representations COS 426 3D Object Representations Desirable properties of an object representation Easy to acquire Accurate Concise Intuitive editing Efficient editing Efficient

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

GL9: Engineering Communications. GL9: CAD techniques. Curves Surfaces Solids Techniques

GL9: Engineering Communications. GL9: CAD techniques. Curves Surfaces Solids Techniques 436-105 Engineering Communications GL9:1 GL9: CAD techniques Curves Surfaces Solids Techniques Parametric curves GL9:2 x = a 1 + b 1 u + c 1 u 2 + d 1 u 3 + y = a 2 + b 2 u + c 2 u 2 + d 2 u 3 + z = a

More information

Ray Tracing. Foley & Van Dam, Chapters 15 and 16

Ray Tracing. Foley & Van Dam, Chapters 15 and 16 Ray Tracing Foley & Van Dam, Chapters 15 and 16 Ray Tracing Visible Surface Ray Tracing (Ray Casting) Examples Efficiency Issues Computing Boolean Set Operations Recursive Ray Tracing Determine visibility

More information

Ray Tracing Foley & Van Dam, Chapters 15 and 16

Ray Tracing Foley & Van Dam, Chapters 15 and 16 Foley & Van Dam, Chapters 15 and 16 (Ray Casting) Examples Efficiency Issues Computing Boolean Set Operations Recursive Determine visibility of a surface by tracing rays of light from the viewer s eye

More information

Computer Graphics (CS 543) Lecture 13b Ray Tracing (Part 1) Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

Computer Graphics (CS 543) Lecture 13b Ray Tracing (Part 1) Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI) Computer Graphics (CS 543) Lecture 13b Ray Tracing (Part 1) Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) Raytracing Global illumination-based rendering method Simulates

More information

Homework #2. Shading, Projections, Texture Mapping, Ray Tracing, and Bezier Curves

Homework #2. Shading, Projections, Texture Mapping, Ray Tracing, and Bezier Curves Computer Graphics Instructor: Brian Curless CSEP 557 Autumn 2016 Homework #2 Shading, Projections, Texture Mapping, Ray Tracing, and Bezier Curves Assigned: Wednesday, Nov 16 th Due: Wednesday, Nov 30

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

Geometric Queries for Ray Tracing

Geometric Queries for Ray Tracing CSCI 420 Computer Graphics Lecture 16 Geometric Queries for Ray Tracing Ray-Surface Intersection Barycentric Coordinates [Angel Ch. 11] Jernej Barbic University of Southern California 1 Ray-Surface Intersections

More information

3D Modeling: Surfaces

3D Modeling: Surfaces CS 430/536 Computer Graphics I 3D Modeling: Surfaces Week 8, Lecture 16 David Breen, William Regli and Maxim Peysakhov Geometric and Intelligent Computing Laboratory Department of Computer Science Drexel

More information

Introduction to Computer Graphics

Introduction to Computer Graphics Introduction to Computer Graphics 2016 Spring National Cheng Kung University Instructors: Min-Chun Hu 胡敏君 Shih-Chin Weng 翁士欽 ( 西基電腦動畫 ) Data Representation Curves and Surfaces Limitations of Polygons Inherently

More information

INFOGR Computer Graphics. J. Bikker - April-July Lecture 11: Acceleration. Welcome!

INFOGR Computer Graphics. J. Bikker - April-July Lecture 11: Acceleration. Welcome! INFOGR Computer Graphics J. Bikker - April-July 2015 - Lecture 11: Acceleration Welcome! Today s Agenda: High-speed Ray Tracing Acceleration Structures The Bounding Volume Hierarchy BVH Construction BVH

More information

Need for Parametric Equations

Need for Parametric Equations Curves and Surfaces Curves and Surfaces Need for Parametric Equations Affine Combinations Bernstein Polynomials Bezier Curves and Surfaces Continuity when joining curves B Spline Curves and Surfaces Need

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

CS-184: Computer Graphics

CS-184: Computer Graphics CS-184: Computer Graphics Lecture #12: Curves and Surfaces Prof. James O Brien University of California, Berkeley V2007-F-12-1.0 Today General curve and surface representations Splines and other polynomial

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

PhD Student. Associate Professor, Co-Director, Center for Computational Earth and Environmental Science. Abdulrahman Manea.

PhD Student. Associate Professor, Co-Director, Center for Computational Earth and Environmental Science. Abdulrahman Manea. Abdulrahman Manea PhD Student Hamdi Tchelepi Associate Professor, Co-Director, Center for Computational Earth and Environmental Science Energy Resources Engineering Department School of Earth Sciences

More information

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

CSE 167: Introduction to Computer Graphics Lecture #13: Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2017 CSE 167: Introduction to Computer Graphics Lecture #13: Curves Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2017 Announcements Project 4 due Monday Nov 27 at 2pm Next Tuesday:

More information

CS 536 Computer Graphics Intro to Curves Week 1, Lecture 2

CS 536 Computer Graphics Intro to Curves Week 1, Lecture 2 CS 536 Computer Graphics Intro to Curves Week 1, Lecture 2 David Breen, William Regli and Maxim Peysakhov Department of Computer Science Drexel University 1 Outline Math review Introduction to 2D curves

More information

Advanced Modeling 2. Katja Bühler, Andrej Varchola, Eduard Gröller. March 24, x(t) z(t)

Advanced Modeling 2. Katja Bühler, Andrej Varchola, Eduard Gröller. March 24, x(t) z(t) Advanced Modeling 2 Katja Bühler, Andrej Varchola, Eduard Gröller March 24, 2014 1 Parametric Representations A parametric curve in E 3 is given by x(t) c : c(t) = y(t) ; t I = [a, b] R z(t) where x(t),

More information

Lecture 17: Solid Modeling.... a cubit on the one side, and a cubit on the other side Exodus 26:13

Lecture 17: Solid Modeling.... a cubit on the one side, and a cubit on the other side Exodus 26:13 Lecture 17: Solid Modeling... a cubit on the one side, and a cubit on the other side Exodus 26:13 Who is on the LORD's side? Exodus 32:26 1. Solid Representations A solid is a 3-dimensional shape with

More information

B. Tech. Project Second Stage Report on

B. Tech. Project Second Stage Report on B. Tech. Project Second Stage Report on GPU Based Active Contours Submitted by Sumit Shekhar (05007028) Under the guidance of Prof Subhasis Chaudhuri Table of Contents 1. Introduction... 1 1.1 Graphic

More information

Solving Systems of Spline Equations: A Linear Programming-based Approach

Solving Systems of Spline Equations: A Linear Programming-based Approach Engineering, Test & Technology Boeing Research & Technology Solving Systems of Spline Equations: A Linear Programming-based Approach Thomas Grandine Senior Technical Fellow Support and Analytics Technology

More information

Surfaces, meshes, and topology

Surfaces, meshes, and topology Surfaces from Point Samples Surfaces, meshes, and topology A surface is a 2-manifold embedded in 3- dimensional Euclidean space Such surfaces are often approximated by triangle meshes 2 1 Triangle mesh

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

Interactive Graphics. Lecture 9: Introduction to Spline Curves. Interactive Graphics Lecture 9: Slide 1

Interactive Graphics. Lecture 9: Introduction to Spline Curves. Interactive Graphics Lecture 9: Slide 1 Interactive Graphics Lecture 9: Introduction to Spline Curves Interactive Graphics Lecture 9: Slide 1 Interactive Graphics Lecture 13: Slide 2 Splines The word spline comes from the ship building trade

More information

Real-Time GPU Rendering of Piecewise Algebraic Surfaces

Real-Time GPU Rendering of Piecewise Algebraic Surfaces Real-Time GPU Rendering of Piecewise Algebraic Surfaces Charles Loop Microsoft Research Jim Blinn Microsoft Research Figure 1: Several states of an animated fourth order algebraic surface rendered in real-time

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

Curves. Computer Graphics CSE 167 Lecture 11

Curves. Computer Graphics CSE 167 Lecture 11 Curves Computer Graphics CSE 167 Lecture 11 CSE 167: Computer graphics Polynomial Curves Polynomial functions Bézier Curves Drawing Bézier curves Piecewise Bézier curves Based on slides courtesy of Jurgen

More information

Intro to Curves Week 4, Lecture 7

Intro to Curves Week 4, Lecture 7 CS 430/536 Computer Graphics I Intro to Curves Week 4, Lecture 7 David Breen, William Regli and Maxim Peysakhov Geometric and Intelligent Computing Laboratory Department of Computer Science Drexel University

More information

8.1 Geometric Queries for Ray Tracing

8.1 Geometric Queries for Ray Tracing Fall 2017 CSCI 420: Computer Graphics 8.1 Geometric Queries for Ray Tracing Hao Li http://cs420.hao-li.com 1 Outline Ray-Surface Intersections Special cases: sphere, polygon Barycentric coordinates 2 Outline

More information

Heterogeneous Computing and Geometry Processing

Heterogeneous Computing and Geometry Processing Heterogeneous Computing and Geometry Processing Tor Dokken SINTEF ICT and CMA University of Oslo tor.dokken@sintef.no www.sintef.no/math www.sintef.no/gpgpu www.sintef.no/parallel3d 1 Structure of presentation

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

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

Curves D.A. Forsyth, with slides from John Hart

Curves D.A. Forsyth, with slides from John Hart Curves D.A. Forsyth, with slides from John Hart Central issues in modelling Construct families of curves, surfaces and volumes that can represent common objects usefully; are easy to interact with; interaction

More information

Rendering Algebraic Surfaces CS348B Final Project

Rendering Algebraic Surfaces CS348B Final Project Rendering Algebraic Surfaces CS348B Final Project Gennadiy Chuyeshov Overview This project is devoted to the visualization of a class consisting of implicit algebraic surfaces in three-dimensional space,

More information

Reparametrization of Interval Curves on Rectangular Domain

Reparametrization of Interval Curves on Rectangular Domain International Journal of Video&Image Processing and Network Security IJVIPNS-IJENS Vol:15 No:05 1 Reparametrization of Interval Curves on Rectangular Domain O. Ismail, Senior Member, IEEE Abstract The

More information

Real-Time Shadows. Last Time? Textures can Alias. Schedule. Questions? Quiz 1: Tuesday October 26 th, in class (1 week from today!

Real-Time Shadows. Last Time? Textures can Alias. Schedule. Questions? Quiz 1: Tuesday October 26 th, in class (1 week from today! Last Time? Real-Time Shadows Perspective-Correct Interpolation Texture Coordinates Procedural Solid Textures Other Mapping Bump Displacement Environment Lighting Textures can Alias Aliasing is the under-sampling

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

The Essentials of CAGD

The Essentials of CAGD The Essentials of CAGD Chapter 6: Bézier Patches Gerald Farin & Dianne Hansford CRC Press, Taylor & Francis Group, An A K Peters Book www.farinhansford.com/books/essentials-cagd c 2 Farin & Hansford The

More information

ICES REPORT February Benjamin Marussig and Thomas J. R. Hughes

ICES REPORT February Benjamin Marussig and Thomas J. R. Hughes ICES REPORT 17-03 February 2017 A Review of Trimming in Isogeometric Analysis: Challenges, Data Exchange and Simulation Aspects by Benjamin Marussig and Thomas J. R. Hughes The Institute for Computational

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

Intro to Curves Week 1, Lecture 2

Intro to Curves Week 1, Lecture 2 CS 536 Computer Graphics Intro to Curves Week 1, Lecture 2 David Breen, William Regli and Maxim Peysakhov Department of Computer Science Drexel University Outline Math review Introduction to 2D curves

More information

Knot Insertion and Reparametrization of Interval B-spline Curves

Knot Insertion and Reparametrization of Interval B-spline Curves International Journal of Video&Image Processing and Network Security IJVIPNS-IJENS Vol:14 No:05 1 Knot Insertion and Reparametrization of Interval B-spline Curves O. Ismail, Senior Member, IEEE Abstract

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

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

Parallel FFT Program Optimizations on Heterogeneous Computers

Parallel FFT Program Optimizations on Heterogeneous Computers Parallel FFT Program Optimizations on Heterogeneous Computers Shuo Chen, Xiaoming Li Department of Electrical and Computer Engineering University of Delaware, Newark, DE 19716 Outline Part I: A Hybrid

More information