INF3320 Computer Graphics and Discrete Geometry

Size: px
Start display at page:

Download "INF3320 Computer Graphics and Discrete Geometry"

Transcription

1 INF3320 Computer Graphics and Discrete Geometry More smooth Curves and Surfaces Christopher Dyken, Michael Floater and Martin Reimers Page 1

2 More smooth Curves and Surfaces Akenine-Möller, Haines and Hoffman: Tessellation (Chapter 13.6) Implicit surfaces (Chapter 13.3) Subdivision curves (Chapter 13.4) Subdivision surfaces (Chapter 13.5) Page 2

3 Parametric patches Page 3

4 Previously in inf Parametric curves and surfaces (patches) p(u 1,v 1 ) p(u 2,v 1 ) v 2 v p p(u,v) v 1 u1 u u2 p(u 1,v 2 ) p(u 2,v 2 ) Page 4

5 Composing patches Did not talk about: Complex models by composing patches: Challenge: make patches match with C 0, C 1,... continuity Page 5

6 Composing patches with continuity Constraints on control-points C 0 C 1 Page 6

7 Composing patches... Nice shading/reflections reveal continuity Page 7

8 Composing patches... Nice shading/reflections reveal continuity How to render spline patches? Convert to triangles... Page 8

9 Tessellation Page 9

10 Tessellation Recall: OpenGL can only handle points, lines, triangles,... Smooth geometry must be tessellated, i.e. approximated Standard approach: sample the smooth geometry, eg uniformly render linear geometry 0 1 Page 10

11 Tessellation Recall: OpenGL can only handle points, lines, triangles,... Smooth geometry must be tessellated, i.e. approximated Standard approach: sample the smooth geometry, eg uniformly render linear geometry 0 1 Page 11

12 Smooth surface tessellation More challenging to sample parametric surfaces Basic approach: tessellate parameter domain render corresponding surface mesh Page 12

13 Smooth surface tessellation More challenging to sample parametric surfaces Basic approach: tessellate parameter domain render corresponding surface mesh Simple algorithm, suitable for GPU Job for the Geometry shader? (one triangle in - multiple out)... not in practice (too few output triangles) Page 13

14 Adaptive tessellation of patches [Dyken,Reimers,Seland 2008] 1 Bezier-triangle per triangle (pre)tessellate each individually Adapt along common boundaries Render corresponding mesh GPGPU and Vertex shader programs, instancing,... Code sample on Nvidias webpages Page 14

15 Hardware Tessellation Shader model 5.0 HW (DirectX11) Comes with hardware tessellation: OpenGL: ARB_tessellation_shader Configurable step in the pipeline Patches tessellated on GPU Fractional tessellation, continuous LOD Solves many problems... Page 15

16 Implicit surfaces Page 16

17 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. Visualized by e.g. marching cubes (contouring) or ray-casting Page 17

18 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. f (r pq (t)) = 0 Find final pixel color Little brother of ray-tracing Back plane m + 1 n + 1 Ray-casting is in some sense the opposite of rasterization Page 18

19 Digression: Real time raytracing on the GPU Raycasting is computationally demanding embarrassingly parallel (check Wikipedia!) A good candidate application for a GPU implementation [Reimers-Seland, Eurographics 2008] paper/video: Page 19

20 Subdivision curves Page 20

21 Subdivision of Bézier Curves We have seen that the de Casteljau algorithm evaluates a Bézier curve from its control polygon. The intermediate points of the de Casteljau algorithm define the control points of two Bézier segments representing the original. = We can divide one Bézier segment into two Bézier segments! Page 21

22 On the left is the triangular structure of the intermediate points of the de Casteljau evaluation. On the right is a figure of the points. p 0 0 p 1 0 p 2 0 p 3 0 p 1 0 p t t 1 t t 1 t p1 p1 p t t 1 t t t p 0 1 p 0 2 p 0 3 p 1 2 p 2 1 p 0 2 p t t p3 0 p 0 0 p 3 0 The original segment on [0, 1] has control points p 0 0, p0 1, p0 2, p0 3. The segment on [0, t] has control points p 0 0, p1 0, p2 0, p3 0. The segment on [t, 1] has control points p 3 0, p2 1, p1 2, p0 3. Page 22

23 If we divide at t = 1 2, we get p 0 0 = p 0 0 p 3 0 = 1 8 (p p p p 0 3), p 1 0 = 1 2 (p0 0 + p 0 1), p 2 1 = 1 4 (p p p 0 3), p 2 0 = 1 4 (p p p 0 2), p 1 2 = 1 2 (p0 2 + p 0 3), p 3 0 = 1 8 (p p p p 0 3), p 0 3 = p 0 3, This is a refinement rule for cubic Bézier curves. Under repeated division, called subdivision, the control polygon converges to the curve. In practice: render the control polygon after a few subdivisions There are similar rules for (uniform) splines Subdivision curves are defined by such refinement rules. Page 23

24 Subdivision curves Curves generated by iterative refinement of a given control polygon (vertices=control points). The result after infinitely many steps is called the limit curve. Both Bézier curves and spline curves are subdivision curves. (I.e. there exists subdivision schemes to generate them) Many such schemes (subdivision zoo). Page 24

25 Chaikin s scheme From control points..., p i 1, p i, p i+1,..., 0 0 p i p i+1 we refine with the rule 1 p 2i+1 p k+1 2i = 1 4 pk i pk i 1 0 p i 1 1 p 2i p k+1 2i+1 = 3 4 pk i pk i 1 Important: The indices differs slightly from the book. Repeat the refinement ad infinitum.! Observation: the number of points doubles at each iteration. Converges to a quadratic C 1 spline curve. Page 25

26 Masks and stencils Collect coefficients into even stencil and odd stencils (rules) and get a e = { 1 4, 3 4 } and ao = { 3 4, 1 4 }, p k+1 2i = 1 4 pk i pk i 1 = j Z a e j p k i j p k+1 2i+1 = 3 4 pk i pk i 1 = aj o p k i j, j Z combined, the even and odd stencils form the mask of the scheme, a = { 1 4, 3 4, 3 4, 1 4 } which yields p k+1 i = j Z a i 2jp k j for i Z The mask express the influence of an old vertex on the new verts. Page 26

27 C 2 cubic spline subdivision Another example is a C 2 cubic spline curve. 0 0 p i p i+1 The subdivision rule is 0 p i 2 0 p i 1 1 p 2i 1 p 2i+1 p k+1 2i = 1 8 pk i pk i pk i 2 p k+1 2i+1 = 1 2 pk i pk i 1 i.e. even (vertex) and odd (edge) stencils a e = { 1 8, 6 8, 1 8 } and ao = { 1 2, 1 2 }, and the mask a = { 1 8, 1 2, 6 8, 1 2, 1 8 }. Note: stencils are convex combinations of control points Page 27

28 General C d 1 uniform spline subdivision The mask for a C d 1 spline curve of degree d is given by a = {a 0, a 1,..., a d+1 } = 1 2 d {( d ), ( d ) ( )} d + 1,..., d + 1 Examples: a = { 1 2, 1, 1 2 } a = { 1 4, 3 4, 3 4, 1 4 } a = { 1 8, 1 2, 6 8, 1 2, 1 8 } Linear spline Quadratic spline (Chaikin) Cubic spline a = { 1 16, 5 16, 10 16, 10 16, 5 16, 1 16 } Quartic spline Note: level d mask can be obtained by averaging level d 1 masks Page 28

29 Interpolatory subdivision Quadratic spline scheme: convex comb. yields convex hull-property The four-point scheme interpolates control points Page 29

30 Subdivision surfaces Page 30

31 Subdivision surfaces Page 31

32 Subdivision surfaces Generated by iterative refinement of a polygonal mesh. Usually, the mesh has four-sided faces (quadrilateral meshes) or three sided faces (triangle meshes). Scheme given by refinement rule, typically generalize 1D rules Can repeat to infinity in theory, interested in limit surface Page 32

33 Subdivision surfaces Surfaces modeled in one piece - built-in continuity Page 33

34 For uniform ( structured ) meshes, the limit surface is a spline surface (e.g. piecewise polynomial). Rectangular grid Triangular grid uniform rectangular mesh = tensor-product spline surface. uniform triangular mesh = box-spline surface. Page 34

35 Tensor-product subdivision on rectangular grids Example 1: Chaikin s scheme. We can create subdivision rules for tensor product surfaces by taking tensor products of curve stencils. For example [ 1 ] [ ] = [ ] = 1 16 [ ] which is the tensor product of the even and odd stencil. There are four ways to combine the even and odd stencils: [ ] [ ] [ ] [ ] ,,, Page 35

36 Tensor products of Chaikin stencils yields subdivision rule for C 1 biquadratic tensor product splines. Get 4 nodes inside each quad: n 1 v i 1,j n v 2i,2j+1 n 1 v i,j n v 2i+1,2j+1 v n 2i,2j n 1 vi 1,j 1 n v2i+1,2j n 1 v i,j 1 v n 2i,2j = 1 16 (9vn 1 i 1,j 1 + 3vn 1 i,j 1 + 3vn 1 i 1,j + vn 1 i,j ) v n 2i+1,2j = 1 16 (3vn 1 i 1,j 1 + 9vn 1 i,j 1 + vn 1 i 1,j + 3vn 1 i,j ) v n 2i,2j+1 = 1 16 (3vn 1 i 1,j 1 + vn 1 i,j 1 + 9vn 1 i 1,j + 3vn 1 i,j ) v n 2i+1,2j+1 = 1 16 (vn 1 i 1,j 1 + 3vn 1 i,j 1 + 3vn 1 i 1,j + 9vn 1 i,j ) Page 36

37 Example 2: C 2 bicubic. The mask for cubic curves is [ ] 1 [ ] a0 a 1 a 2 a 3 a 4 = i.e., the even and odd stencils are 1 [ ] and 1 [ ] Tensor-products of these stencils yields four bicubic stencils: , }{{} Stencil A 1 1 [ ] ,, }{{} Stencils B [ ] }{{} Stencil C Page 37

38 These are used to compute the four new control points [ v n 2i+1,2j v2i+1,2j+1 n ] n 1 v i,j v n 2i,2j v n 2i,2j+1 from the old control points v n 1 i 2,j v n 1 i 2,j 1 v n 1 i 2,j 2 v n 1 i 1,j v n 1 i 1,j 1 v n 1 i 1,j , }{{} Stencil A v n 1 i,j v n 1 i,j 1 v n 1 i,j 2. n 1 v i 2,j n 1 v i 1,j n v 2i,2j+1 n 1 vi 2,j 1 v n 2i+1,2j+1 n v 2i,2j n 1 vi 1,j [ ] ,, }{{} Stencils B v n 2i+1,2j n 1 vi 2,j 2 n 1 v i,j 1 n 1 v i 1,j 2 [ ] }{{} Stencil C n 1 vi,j 2 Page 38

39 Generalized subdivision So far: polynomial surfaces can be described by subdivision Want to extend rules to handle meshes that are not regular grids Also want the limit surface to be as smooth as possible. Page 39

40 Non-uniform meshes Faces with n vertices (not only 3 and 4) Vertices with valence m 4, 6, so called extraordinary points Many subdivision schemes, for different mesh-types typically polynomial locally... but not near extraordinary points. Page 40

41 Catmull-Clark subdivision surfaces A generalization of C 2 bicubic spline subdivision scheme to an arbitrary polygonal mesh. The limit surface is C 1 at extraordinary points and C 2 elsewhere. It has been shown that C 2 continuity at extraordinary points is impossible without using larger stencils. Page 41

42 The basic idea of the Catmull-Clark subdivision scheme is: The input mesh can contain any types of polygons (triangles, quads, etc.) Calculate face points, edge points, and vertex points. For each vertex in each face, create a quad connecting the vertex point, two edge points, and a face point. After one refinement, the mesh consists of quads exclusively. Page 42

43 Face points are averages of the polygon vertices v1 k,..., vk m, f k+1 = 1 n vi k n Edge points are the average of the two end-points of the edge v k, e k and the face points of the two adjacent faces f k+1 i, f k+1 e k+1 = 1 ( ) v k + e k + f k+1 i + f k+1 j 4 i=1 j, Vertex points are combinations of surrounding vertices v1 k,..., vk n and the face points f1 k,..., fk n of the adjacent faces, v k+1 = n 2 n vk + 1 n n 2 e k i + 1 n n 2 f k+1 i i=1 i=1 Page 43

44 Catmull Clark New control points are convex comb. of the old = Convex hull property, stable algorithms Limit points, tangents, etc can be computed Usually not evaluated, but can be done Page 44

45 Loop subdivision A subdivision scheme for arbitrary triangle meshes. The Loop scheme is based on so-called C 2 quartic box-splines Page 45

46 The Loop subdivision scheme uses the 1-4 split: After one subdivision step each former triangle is replaced by four: V i+1 = V i + E i, E i+1 = 2 E i + 3 T i, T i+1 = 4 T i. There are only two stencils in the Loop scheme: 1. positions for vertices corresponding to the old vertices, and 2. positions for vertices corresponding to edge points. Page 46

47 In the Loop scheme, the new position is a combination of the position of the old vertex and its immediate neighbours: where β β β β = 1 ( ) 5 (3 + 2 cos(2π/n))2. n nβ β β β β The canonical case is n = 6 in which case the scheme reduces to box-spline subdivision, yielding a C 2 surface. Loop showed that the limit surface is C 1 at extraordinary points, and C 2 elsewhere. Page 47

48 The position of the edge-point is a combination of the vertices of the two triangles adjacent to that edge: 1/8 3/8 3/8 1/8 Then, what should we do along the boundary? Page 48

49 A common technique for dealing with the boundary in the Loop scheme is to let the boundary curve be a cubic spline. Recall that the mask of cubic spline curve subdivision is a = { 1 8, 1 2, 3 4, 1 2, 1 8 } and let boundary edge points be determined by the odd stencil and the boundary vertices be determined by the even stencil, i.e., 1/8 3/4 1/2 1/8 1/2 Page 49

50 3 subdivision A subdivision scheme for arbitrary triangle meshes. The 3 subdivision scheme of Leif Kobbelt creates only 3 new triangles per triangle in each subdivision step (Loop creates 4). C 1 continuous in extraordinary vertices and C 2 elsewhere Page 50

51 The splitting scheme of 3 subdivision is: Given a triangle mesh, compute the new positions for the vertices as well as the triangle midpoints from the old vertices, split each triangle into three new triangles, then swap the diagonal of all pairs of adjacent triangles where the common edge is an old edge. Page 51

52 We can create the new triangles directly: Each edge in the old mesh yields two new triangles. To handle boundaries, we use the same rules as Loop (Slide??) to calculate boundary edge points and boundary vertices. Each boundary edge yields two new triangles connecting the end points of the edge, the adjacent triangle midpoint, and the edge point. Note: Only boundary edges get an edge point! Page 52

53 3 subdivision has a vertex rule and a triangle rule: β β 1 nβ β β The vertex rule is a blend of the old position and the surrounding vertices, where β β β β = 4 2 cos(2π/n). 9n 1/3 The triangle midpoint rule is simple, the position is the barycentre of the triangle. 1/3 1/3 Page 53

54 Interpolatory subdivision schemes The butterfly scheme: vertex points preserved, edge points by affine combination Yields C 1 smooth surfaces that interpolates control mesh Page 54

55 Interpolatory subdivision schemes The butterfly scheme: vertex points preserved, edge points by affine combination Yields C 1 smooth surfaces that interpolates control mesh Approximating (spline-based) and interpolatory schemes produce very different limit surfaces Page 55

56 Features, creases Subdivision surfaces with piecewise continuity Modified rules to get features, sharp creases etc. Page 56

57 Subdivision surfaces - summary Pros: Many of the pros of splines Flexibility, wrt. topology/mesh Spline surfaces without gaps and seams! Simple to implement Simple/intuitive to manipulate Cons: No global closed form (but locally) Evaluation not straight forward (but?) C k, k > 1 is hard Artefacts (ripples etc.) CC cannot make convex surface for n > 5 Page 57

58 The last slide Next time - advanced topics: Global illumination Shadows GPU programming... Page 58

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

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

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

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

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

09 - Designing Surfaces. CSCI-GA Computer Graphics - Fall 16 - Daniele Panozzo

09 - Designing Surfaces. CSCI-GA Computer Graphics - Fall 16 - Daniele Panozzo 9 - Designing Surfaces Triangular surfaces A surface can be discretized by a collection of points and triangles Each triangle is a subset of a plane Every point on the surface can be expressed as an affine

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

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

Example: Loop Scheme. Example: Loop Scheme. What makes a good scheme? recursive application leads to a smooth surface.

Example: Loop Scheme. Example: Loop Scheme. What makes a good scheme? recursive application leads to a smooth surface. 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 Example: Loop Scheme Two geometric

More information

Subdivision Curves and Surfaces: An Introduction

Subdivision Curves and Surfaces: An Introduction Subdivision Curves and Surfaces: An Introduction Corner Cutting De Casteljau s and de Boor s algorithms all use corner-cutting procedures. Corner cutting can be local or non-local. A cut is local if it

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

Curve Corner Cutting

Curve Corner Cutting Subdivision ision Techniqueses Spring 2010 1 Curve Corner Cutting Take two points on different edges of a polygon and join them with a line segment. Then, use this line segment to replace all vertices

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

u 0+u 2 new boundary vertex

u 0+u 2 new boundary vertex Combined Subdivision Schemes for the design of surfaces satisfying boundary conditions Adi Levin School of Mathematical Sciences, Tel-Aviv University, Tel-Aviv 69978, Israel. Email:fadilev@math.tau.ac.ilg

More information

Curves, Surfaces and Recursive Subdivision

Curves, Surfaces and Recursive Subdivision Department of Computer Sciences Graphics Fall 25 (Lecture ) Curves, Surfaces and Recursive Subdivision Conics: Curves and Quadrics: Surfaces Implicit form arametric form Rational Bézier Forms Recursive

More information

UNIVERSITY OF CALGARY. Subdivision Surfaces. Advanced Geometric Modeling Faramarz Samavati

UNIVERSITY OF CALGARY. Subdivision Surfaces. Advanced Geometric Modeling Faramarz Samavati Subdivision Surfaces Surfaces Having arbitrary Topologies Tensor Product Surfaces Non Tensor Surfaces We can t find u-curves and v-curves in general surfaces General Subdivision Coarse mesh Subdivision

More information

CS354 Computer Graphics Surface Representation III. Qixing Huang March 5th 2018

CS354 Computer Graphics Surface Representation III. Qixing Huang March 5th 2018 CS354 Computer Graphics Surface Representation III Qixing Huang March 5th 2018 Today s Topic Bspline curve operations (Brief) Knot Insertion/Deletion Subdivision (Focus) Subdivision curves Subdivision

More information

Subdivision surfaces. University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell

Subdivision surfaces. University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell Subdivision surfaces University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell Reading Recommended: Stollnitz, DeRose, and Salesin. Wavelets for Computer Graphics: Theory and Applications,

More information

Subdivision overview

Subdivision overview Subdivision overview CS4620 Lecture 16 2018 Steve Marschner 1 Introduction: corner cutting Piecewise linear curve too jagged for you? Lop off the corners! results in a curve with twice as many corners

More information

Approximate Catmull-Clark Patches. Scott Schaefer Charles Loop

Approximate Catmull-Clark Patches. Scott Schaefer Charles Loop Approximate Catmull-Clark Patches Scott Schaefer Charles Loop Approximate Catmull-Clark Patches Scott Schaefer Charles Loop Catmull-Clark Surface ACC-Patches Polygon Models Prevalent in game industry Very

More information

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

Ray-casting Algebraic Surfaces using the Frustum Form. Eurographics 2008 Crete, Thursday April 17. Ray-casting Algebraic Surfaces using the Frustum Form Martin Reimers Johan Seland Eurographics 2008 Crete, Thursday April 17. Algebraic Surfaces Zero set of polynomial f : R 3 R f (x, y, z) = f ijk x i

More information

Subdivision Curves and Surfaces

Subdivision Curves and Surfaces Subdivision Surfaces or How to Generate a Smooth Mesh?? Subdivision Curves and Surfaces Subdivision given polyline(2d)/mesh(3d) recursively modify & add vertices to achieve smooth curve/surface Each iteration

More information

Curves and Surfaces 2

Curves and Surfaces 2 Curves and Surfaces 2 Computer Graphics Lecture 17 Taku Komura Today More about Bezier and Bsplines de Casteljau s algorithm BSpline : General form de Boor s algorithm Knot insertion NURBS Subdivision

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

Subdivision curves and surfaces. Brian Curless CSE 557 Fall 2015

Subdivision curves and surfaces. Brian Curless CSE 557 Fall 2015 Subdivision curves and surfaces Brian Curless CSE 557 Fall 2015 1 Reading Recommended: Stollnitz, DeRose, and Salesin. Wavelets for Computer Graphics: Theory and Applications, 1996, section 6.1-6.3, 10.2,

More information

Subdivision Surfaces. Homework 1: Last Time? Today. Bilinear Patch. Tensor Product. Spline Surfaces / Patches

Subdivision Surfaces. Homework 1: Last Time? Today. Bilinear Patch. Tensor Product. Spline Surfaces / Patches Homework 1: Questions/Comments? Subdivision Surfaces Last Time? Curves & Surfaces Continuity Definitions Spline Surfaces / Patches Tensor Product Bilinear Patches Bezier Patches Trimming Curves C0, G1,

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

Review of Tuesday. ECS 175 Chapter 3: Object Representation

Review of Tuesday. ECS 175 Chapter 3: Object Representation Review of Tuesday We have learnt how to rasterize lines and fill polygons Colors (and other attributes) are specified at vertices Interpolation required to fill polygon with attributes 26 Review of Tuesday

More information

CSE 167: Introduction to Computer Graphics Lecture 12: Bézier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013

CSE 167: Introduction to Computer Graphics Lecture 12: Bézier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013 CSE 167: Introduction to Computer Graphics Lecture 12: Bézier Curves Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013 Announcements Homework assignment 5 due tomorrow, Nov

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

Advanced Graphics. Subdivision Surfaces. Alex Benton, University of Cambridge Supported in part by Google UK, Ltd

Advanced Graphics. Subdivision Surfaces. Alex Benton, University of Cambridge Supported in part by Google UK, Ltd Advanced Graphics Subdivision Surfaces Alex Benton, University of Cambridge A.Benton@damtp.cam.ac.uk Supported in part by Google UK, Ltd NURBS patches aren t the greatest NURBS patches are nxm, forming

More information

Subdivision. Outline. Key Questions. Subdivision Surfaces. Advanced Computer Graphics (Spring 2013) Video: Geri s Game (outside link)

Subdivision. Outline. Key Questions. Subdivision Surfaces. Advanced Computer Graphics (Spring 2013) Video: Geri s Game (outside link) Advanced Computer Graphics (Spring 03) CS 83, Lecture 7: Subdivision Ravi Ramamoorthi http://inst.eecs.berkeley.edu/~cs83/sp3 Slides courtesy of Szymon Rusinkiewicz, James O Brien with material from Denis

More information

ECE 600, Dr. Farag, Summer 09

ECE 600, Dr. Farag, Summer 09 ECE 6 Summer29 Course Supplements. Lecture 4 Curves and Surfaces Aly A. Farag University of Louisville Acknowledgements: Help with these slides were provided by Shireen Elhabian A smile is a curve that

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

Curves and Surfaces Computer Graphics I Lecture 9

Curves and Surfaces Computer Graphics I Lecture 9 15-462 Computer Graphics I Lecture 9 Curves and Surfaces Parametric Representations Cubic Polynomial Forms Hermite Curves Bezier Curves and Surfaces [Angel 10.1-10.6] February 19, 2002 Frank Pfenning Carnegie

More information

Efficient GPU Rendering of Subdivision Surfaces. Tim Foley,

Efficient GPU Rendering of Subdivision Surfaces. Tim Foley, Efficient GPU Rendering of Subdivision Surfaces Tim Foley, 2017-03-02 Collaborators Activision Wade Brainerd Stanford Matthias Nießner NVIDIA Manuel Kraemer Henry Moreton 2 Subdivision surfaces are a powerful

More information

Subdivision Surfaces. Homework 1: Questions on Homework? Last Time? Today. Tensor Product. What s an illegal edge collapse?

Subdivision Surfaces. Homework 1: Questions on Homework? Last Time? Today. Tensor Product. What s an illegal edge collapse? Homework 1: Questions/Comments? Subdivision Surfaces Questions on Homework? Last Time? What s an illegal edge collapse? Curves & Surfaces Continuity Definitions 2 3 C0, G1, C1, C 1 a b 4 Interpolation

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

Subdivision Surfaces

Subdivision Surfaces Subdivision Surfaces CS 4620 Lecture 31 Cornell CS4620 Fall 2015 1 Administration A5 due on Friday Dreamworks visiting Thu/Fri Rest of class Surfaces, Animation, Rendering w/ prior instructor Steve Marschner

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

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

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

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

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

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

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

REAL-TIME SMOOTH SURFACE CONSTRUCTION ON THE GRAPHICS PROCESSING UNIT

REAL-TIME SMOOTH SURFACE CONSTRUCTION ON THE GRAPHICS PROCESSING UNIT REAL-TIME SMOOTH SURFACE CONSTRUCTION ON THE GRAPHICS PROCESSING UNIT By TIANYUN NI A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT OF THE REQUIREMENTS

More information

Using Semi-Regular 4 8 Meshes for Subdivision Surfaces

Using Semi-Regular 4 8 Meshes for Subdivision Surfaces Using Semi-Regular 8 Meshes for Subdivision Surfaces Luiz Velho IMPA Instituto de Matemática Pura e Aplicada Abstract. Semi-regular 8 meshes are refinable triangulated quadrangulations. They provide a

More information

Advanced Computer Graphics

Advanced Computer Graphics Advanced Computer Graphics Lecture 2: Modeling (1): Polygon Meshes Bernhard Jung TU-BAF, Summer 2007 Overview Computer Graphics Icon: Utah teapot Polygon Meshes Subdivision Polygon Mesh Optimization high-level:

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

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

Motivation MGB Agenda. Compression. Scalability. Scalability. Motivation. Tessellation Basics. DX11 Tessellation Pipeline

Motivation MGB Agenda. Compression. Scalability. Scalability. Motivation. Tessellation Basics. DX11 Tessellation Pipeline MGB 005 Agenda Motivation Tessellation Basics DX Tessellation Pipeline Instanced Tessellation Instanced Tessellation in DX0 Displacement Mapping Content Creation Compression Motivation Save memory and

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

Subdivision Surfaces. Homework 1: Questions/Comments?

Subdivision Surfaces. Homework 1: Questions/Comments? Subdivision Surfaces Homework 1: Questions/Comments? 1 Questions on Homework? What s an illegal edge collapse? 1 2 3 a b 4 7 To be legal, the ring of vertex neighbors must be unique (have no duplicates)!

More information

Curves and Surfaces. Shireen Elhabian and Aly A. Farag University of Louisville

Curves and Surfaces. Shireen Elhabian and Aly A. Farag University of Louisville Curves and Surfaces Shireen Elhabian and Aly A. Farag University of Louisville February 21 A smile is a curve that sets everything straight Phyllis Diller (American comedienne and actress, born 1917) Outline

More information

and the crooked shall be made straight, and the rough ways shall be made smooth; Luke 3:5

and the crooked shall be made straight, and the rough ways shall be made smooth; Luke 3:5 ecture 8: Knot Insertion Algorithms for B-Spline Curves and Surfaces and the crooked shall be made straight, and the rough ways shall be made smooth; uke 3:5. Motivation B-spline methods have several advantages

More information

Curves and Surfaces Computer Graphics I Lecture 10

Curves and Surfaces Computer Graphics I Lecture 10 15-462 Computer Graphics I Lecture 10 Curves and Surfaces Parametric Representations Cubic Polynomial Forms Hermite Curves Bezier Curves and Surfaces [Angel 10.1-10.6] September 30, 2003 Doug James Carnegie

More information

Parameterization. Michael S. Floater. November 10, 2011

Parameterization. Michael S. Floater. November 10, 2011 Parameterization Michael S. Floater November 10, 2011 Triangular meshes are often used to represent surfaces, at least initially, one reason being that meshes are relatively easy to generate from point

More information

Objects 2: Curves & Splines Christian Miller CS Fall 2011

Objects 2: Curves & Splines Christian Miller CS Fall 2011 Objects 2: Curves & Splines Christian Miller CS 354 - Fall 2011 Parametric curves Curves that are defined by an equation and a parameter t Usually t [0, 1], and curve is finite Can be discretized at arbitrary

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

Modeling. Simulating the Everyday World

Modeling. Simulating the Everyday World Modeling Simulating the Everyday World Three broad areas: Modeling (Geometric) = Shape Animation = Motion/Behavior Rendering = Appearance Page 1 Geometric Modeling 1. How to represent 3d shapes Polygonal

More information

Subdivision on Arbitrary Meshes: Algorithms and Theory

Subdivision on Arbitrary Meshes: Algorithms and Theory Subdivision on Arbitrary Meshes: Algorithms and Theory Denis Zorin New York University 719 Broadway, 12th floor, New York, USA E-mail: dzorin@mrl.nyu.edu Subdivision surfaces have become a standard geometric

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

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

Curves & Surfaces. Last Time? Progressive Meshes. Selective Refinement. Adjacency Data Structures. Mesh Simplification. Mesh Simplification

Curves & Surfaces. Last Time? Progressive Meshes. Selective Refinement. Adjacency Data Structures. Mesh Simplification. Mesh Simplification Last Time? Adjacency Data Structures Curves & Surfaces Geometric & topologic information Dynamic allocation Efficiency of access Mesh Simplification edge collapse/vertex split geomorphs progressive transmission

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

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

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

Chapter 4-3D Modeling

Chapter 4-3D Modeling Chapter 4-3D Modeling Polygon Meshes Geometric Primitives Interpolation Curves Levels Of Detail (LOD) Constructive Solid Geometry (CSG) Extrusion & Rotation Volume- and Point-based Graphics 1 The 3D rendering

More information

Parameterization of triangular meshes

Parameterization of triangular meshes Parameterization of triangular meshes Michael S. Floater November 10, 2009 Triangular meshes are often used to represent surfaces, at least initially, one reason being that meshes are relatively easy to

More information

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

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

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

Interpolatory 3-Subdivision

Interpolatory 3-Subdivision EUROGRAPHICS 2000 / M. Gross and F.R.A. Hopgood (Guest Editors) Volume 19 (2000), Number 3 Interpolatory 3-Subdivision U. Labsik G. Greiner Computer Graphics Group University of Erlangen-Nuremberg Am Weichselgarten

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

2D Spline Curves. CS 4620 Lecture 18

2D Spline Curves. CS 4620 Lecture 18 2D Spline Curves CS 4620 Lecture 18 2014 Steve Marschner 1 Motivation: smoothness In many applications we need smooth shapes that is, without discontinuities So far we can make things with corners (lines,

More information

Bézier and B-spline volumes Project of Dissertation

Bézier and B-spline volumes Project of Dissertation Department of Algebra, Geometry and Didactics of Mathematics Faculty of Mathemathics, Physics and Informatics Comenius University, Bratislava Bézier and B-spline volumes Project of Dissertation Martin

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

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

Rasterization Overview

Rasterization Overview Rendering Overview The process of generating an image given a virtual camera objects light sources Various techniques rasterization (topic of this course) raytracing (topic of the course Advanced Computer

More information

Technical Report. Removing polar rendering artifacts in subdivision surfaces. Ursula H. Augsdörfer, Neil A. Dodgson, Malcolm A. Sabin.

Technical Report. Removing polar rendering artifacts in subdivision surfaces. Ursula H. Augsdörfer, Neil A. Dodgson, Malcolm A. Sabin. Technical Report UCAM-CL-TR-689 ISSN 1476-2986 Number 689 Computer Laboratory Removing polar rendering artifacts in subdivision surfaces Ursula H. Augsdörfer, Neil A. Dodgson, Malcolm A. Sabin June 2007

More information

Recursive Subdivision Surfaces for Geometric Modeling

Recursive Subdivision Surfaces for Geometric Modeling Recursive Subdivision Surfaces for Geometric Modeling Weiyin Ma City University of Hong Kong, Dept. of Manufacturing Engineering & Engineering Management Ahmad Nasri American University of Beirut, Dept.

More information

CS 4620 Final Exam. (a) Is a circle C 0 continuous?

CS 4620 Final Exam. (a) Is a circle C 0 continuous? CS 4620 Final Exam Wednesday 9, December 2009 2 1 2 hours Prof. Doug James Explain your reasoning for full credit. You are permitted a double-sided sheet of notes. Calculators are allowed but unnecessary.

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

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

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

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

INF3320 Computer Graphics and Discrete Geometry

INF3320 Computer Graphics and Discrete Geometry INF3320 Computer Graphics and Discrete Geometry Texturing Christopher Dyken Martin Reimers 06.10.2010 Page 1 Texturing Linear interpolation Real Time Rendering: Chapter 5: Visual Appearance Chapter 6:

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

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

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

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

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

MA 323 Geometric Modelling Course Notes: Day 36 Subdivision Surfaces

MA 323 Geometric Modelling Course Notes: Day 36 Subdivision Surfaces MA 323 Geometric Modelling Course Notes: Day 36 Subdivision Surfaces David L. Finn Today, we continue our discussion of subdivision surfaces, by first looking in more detail at the midpoint method and

More information

Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches

Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches Charles Loop Microsoft Research Scott Schaefer Texas A&M University April 24, 2007 Technical Report MSR-TR-2007-44 Microsoft Research

More information

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

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

Computer Graphics 1. Chapter 2 (May 19th, 2011, 2-4pm): 3D Modeling. LMU München Medieninformatik Andreas Butz Computergraphik 1 SS2011

Computer Graphics 1. Chapter 2 (May 19th, 2011, 2-4pm): 3D Modeling. LMU München Medieninformatik Andreas Butz Computergraphik 1 SS2011 Computer Graphics 1 Chapter 2 (May 19th, 2011, 2-4pm): 3D Modeling 1 The 3D rendering pipeline (our version for this class) 3D models in model coordinates 3D models in world coordinates 2D Polygons in

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

G 2 Interpolation for Polar Surfaces

G 2 Interpolation for Polar Surfaces 1 G 2 Interpolation for Polar Surfaces Jianzhong Wang 1, Fuhua Cheng 2,3 1 University of Kentucky, jwangf@uky.edu 2 University of Kentucky, cheng@cs.uky.edu 3 National Tsinhua University ABSTRACT In this

More information