Spline Surfaces, Subdivision Surfaces
|
|
- William Bailey
- 6 years ago
- Views:
Transcription
1 CS-C3100 Computer Graphics Spline Surfaces, Subdivision Surfaces vectorportal.com
2 Trivia Assignment 1 due this Sunday! Feedback on the starter code, difficulty, etc., much appreciated Put in your README in the submission 2
3 Awesome Interactive Spline Intro 3
4 See something? Say something! 4
5 Representing Surfaces Triangle meshes Surface analogue of polylines, this is what GPUs draw Tensor Product Splines Surface analogue of spline curves Subdivision surfaces Implicit surfaces f(x,y,z)=0 Procedural e.g. surfaces of revolution, generalized cylinder From volume data (medical images, etc.) 5
6 Triangle Meshes What you ve used so far in Asst 1 Triangle represented by 3 vertices Pro: simple, can be rendered directly Cons: not smooth, needs many triangles to approximate smooth surfaces (tessellation) 6
7 Smooth Surfaces? P(t) = (1-t) 3 P 1 + 3t(1-t) 2 P 2 + 3t 2 (1-t) P 3 + t 3 P 4 What s the dimensionality of a curve? 1D! What about a surface? 7
8 How to Build Them? P(u) = (1-u) 3 P 1 + 3u(1-u) 2 P 2 + 3u 2 (1-u) P 3 + u 3 P 4 (Note! We relabeled t to u) 8
9 How to Build Them? Here s an Idea P(u) = (1-u) 3 P 1 + 3u(1-u) 2 P 2 + 3u 2 (1-u) P 3 + u 3 P 4 (Note! We relabeled t to u) 9
10 Here s an Idea P(u, v) = (1-u) 3 P 1 (v) + 3u(1-u) 2 P 2 (v) + 3u 2 (1-u) P 3 (v) + u 3 P 4 (v) Let s make the Pis move along curves! v=0 v=1 10
11 Here s an Idea P(u, v) = (1-u) 3 P 1 (v) + 3u(1-u) 2 P 2 (v) + 3u 2 (1-u) P 3 (v) + u 3 P 4 (v) Let s make the Pis move along curves! v=0 v=1 11
12 Here s an Idea P(u, v) = (1-u) 3 P 1 (v) + 3u(1-u) 2 P 2 (v) + 3u 2 (1-u) P 3 (v) + u 3 P 4 (v) Let s make the Pis move along curves! v=0 v=1/3 v=1 12
13 Here s an Idea P(u, v) = (1-u) 3 P 1 (v) + 3u(1-u) 2 P 2 (v) + 3u 2 (1-u) P 3 (v) + u 3 P 4 (v) Let s make the Pis move along curves! v=0 v=1/3 v=2/3 v=1 13
14 Here s an Idea P(u, v) = (1-u) 3 P 1 (v) + 3u(1-u) 2 P 2 (v) + 3u 2 (1-u) P 3 (v) + u 3 P 4 (v) Let s make the Pis move along curves! v=0 v=1/3 v=2/3 v=1 14
15 Here s an Idea P(u, v) = (1-u) 3 P 1 (v) + 3u(1-u) 2 P 2 (v) + 3u 2 (1-u) P 3 (v) + u 3 P 4 (v) Let s make the Pis move along curves! A 2D surface patch! s=0 s=1/3 s=2/3 s=1 15
16 Tensor Product Bézier Patches In the previous, Pi(v) were just some curves What if we make them Bézier curves too? 16
17 Tensor Product Bézier Patches In the previous, Pi(v) were just some curves What if we make them Bézier curves too? Each u=const. and v=const. curve is a Bézier curve! Note that the boundary control points (except corners) are NOT interpolated! v=0 v=1 v=2/3 17
18 Tensor Product Bézier Patches A bicubic Bézier surface 18
19 Tensor Product Bézier Patches Note that only the 4 corners are interpolated! The Control Mesh 16 control points 19
20 Bicubics, Tensor Product P(u,v) = B1(u) * P 1 (v) + B2(u) * P 2 (v) + B3(u) * P 3 (v) + B4(u) * P 4 (v) P4,1 P3,2 P4,2 P4,3 P4,4 Pi(v) = B1(v) * Pi,1 + B2(v) * Pi,2 + B3(v) * Pi,3 + B4(v) * Pi,4 P3,1 P2,1 P2,2 P2,3 P3,3 P2,4 P3,4 P1,4 P1,1 P1,2 P1,3 20
21 Bicubics, Tensor Product P(u,v) = B1(u) * P 1 (v) + B2(u) * P 2 (v) + B3(u) * P 3 (v) + B4(u) * P 4 (v) Pi(v) = B1(v) * Pi,1 + B2(v) * Pi,2 + B3(v) * Pi,3 + B4(v) * Pi,4 P (u, v) = = 4 i=1 4 i=1 B i (u) 4 j=1 4 j=1 P i,j B j (v) P i,j B i,j (u, v) B i,j (u, v) =B i (u)b j (v)
22 Bicubics, Tensor Product P(u,v) = B1(u) * P 1 (v) + B2(u) * P 2 (v) + B3(u) * P 3 (v) + B4(u) * P 4 (v) Pi(v) = B1(v) * Pi,1 + B2(v) * Pi,2 + B3(v) * Pi,3 + B4(v) * Pi,4 P (u, v) = 4 4 B i (u) P i,j B j (v) 16 control points Pi,j i=1 j=1 16 2D basis functions Bi,j = 4 i=1 4 j=1 P i,j B i,j (u, v) B i,j (u, v) =B i (u)b j (v)
23 Recap: Tensor Bézier Patches Parametric surface P(u,v) is a cubic polynomial of two variables u & v Defined by 4x4=16 control points P1,1, P1,2... P4,4 Interpolates 4 corners, approximates others 23
24 Tensor Product Bézier Patches Defined by 4x4=16 control points P1,1, P1,2... P4,4 Basis are product of two Bernstein polynomials: B1(u)B1(v); B1(u)B2(v);... B4(u)B4(v) 24
25 Questions? 25
26 Tangents and Normals for Patches P(u,v) is a 3D point specified by u, v The partial derivatives P/ u and are 3D vectors Both are tangent to surface at P P/ v 26
27 Tangents and Normals for Patches P(u,v) is a 3D point specified by u, v The partial derivatives P/ u and are 3D vectors Both are tangent to surface at P Normal is perpendicular to both, i.e., n =( P/ u) ( P/ v) P/ v n is usually not unit, so must normalize! 27
28 Questions? 28
29 Recap: Matrix Notation for Curves Cubic Bézier in matrix notation point on curve (2x1 vector) P(t) = x(t) y(t) x 1 x 2 x 3 x 4 y 1 y 2 y 3 y 4 Geometry matrix of control points P1..P4 (2 x 4) = Spline matrix (Bernstein) Canonical power basis 1 t t 2 t 3 29
30 Hardcore: Matrix Notation for Patches Not required, but convenient! x coordinate of surface at (u,v) P (u, v) = 4 B i (u) 4 i=1 j=1 P i,j B j (v) P x (u, v) = P1,1 x.. P1,4 x (B 1 (u),...,b 4 (u)).. P4,1 x.. P4,4 x Row vector of basis functions (u) 4x4 matrix of x coordinates of the control points Column vector of basis functions (v) B 1 (v). B 4 (v) 30
31 Hardcore: Matrix Notation for Patches Curves: Surfaces: P (t) =GBT(t) P x (u, v) =T (u) T B T G x BT(v) T = power basis B = spline matrix G = geometry matrix A separate 4x4 geometry matrix for x, y, z 31
32 Super Hardcore: Tensor Notation You can stack the G x, G y, G z matrices into a geometry tensor of control points I.e., G k i,j = the k:th coordinate of control point Pi,j A cube of numbers! P k (u, v) =T l (u) B i l G k ij B j m T m (v) Einstein summation convention : Repeated indices are summed over (here l, m, i, j) Definitely not required, but nice! :) See 32
33 33
34 Tensor Product B-Spline Patches Bézier and B-Spline curves are both cubics => Can change between representations using matrices Consequently, you can build tensor product surface patches out of B-Splines just as well Still 4x4 control points for each patch 2D basis functions are pairwise products of B-Spline basis functions Sliding window of 4x4 points Yes, simple! 34
35 Tensor Product Spline Patches Pros Smooth Defined by reasonably small set of points Cons Harder to render (usually converted to triangles) Tricky to ensure continuity at patch boundaries Extensions Rational splines: Splines in homogeneous coordinates NURBS: Non-Uniform Rational B-Splines Like curves: ratio of polynomials, non-uniform location of control points, etc. 35
36 Utah Teapot: Tensor Bézier Splines Designed by Martin Newell 36
37 Cool: Displacement Mapping Not all surfaces are smooth... 37
38 Cool: Displacement Mapping Not all surfaces are smooth... Paint displacements on a smooth surface For example, in the direction of normal Tessellate smooth patch into fine grid, then add displacement D(u,v) to vertices Heavily used in movies, more and more in games 38
39 Displacement Mapping Example? Smooth base surface Displaced Surface zbrushcentral 39
40 Displacement Mapping Video Here, input triangles are also dynamically tessellated by the GPU 40
41 Subdivision Surfaces Start with polygonal mesh Subdivide into larger number of polygons, smooth result after each subdivision Lots of ways to do this. The limit surface is smooth! 41
42 Corner Cutting Slide by Adi Levin 42
43 Corner Cutting 3 : 1 1 : 3 Slide by Adi Levin 43
44 Corner Cutting 44
45 Corner Cutting Slide by Adi Levin 45
46 Corner Cutting Slide by Adi Levin 46
47 Corner Cutting Slide by Adi Levin 47
48 Corner Cutting Slide by Adi Levin 48
49 Corner Cutting Slide by Adi Levin 49
50 Corner Cutting A control point The limit curve The control polygon Slide by Adi Levin 50
51 A control point It turns out corner cutting (Chaikin s Algorithm) produces a quadratic B- Spline curve! (Magic!) The limit curve The control polygon Slide by Adi Levin 51
52 Corner Cutting A control point It turns out corner cutting (Chaikin s Algorithm) produces a quadratic B- Spline curve! (Magic!) The limit curve (Well, not totally unexpected, remember de Casteljau) The control polygon Slide by Adi Levin 52
53 Subdivision Curves and Surfaces Idea: cut corners to smooth Add points and compute weighted average of neighbors Same for surfaces Special case for irregular vertices vertex with more or less than 6 neighbors in a triangle mesh Warren et al. 53
54 Assignment 2: Loop Subdivision (Named after Charles Loop)
55 Assignment 2: Loop Subdivision The input mesh
56 Assignment 2: Loop Subdivision First step: insert vertices in the middle of all edges
57 Assignment 2: Loop Subdivision Then compute positions for new vertices Weighted combinations of the connected old vertices Need adjacency information (details in handout) p 11 = 1 8 p p p p 4 w=1/8 6 w=3/ w=1/8 4 w=3/8 57
58 Assignment 2: Loop Subdivision Then compute new positions for all old vertices! Again weighted combinations of nearby old vertices Need to find all n connected vertices p 0 1 =(1 nb) p 1 + B(p 2 + p 9 + p 5 + p 4 + p 6 + p 3 ) w=b 2 9 w=b B = ( 3 8n, n > , n =3 w=b 3 w=b w=b w=1-nb 4 w=b 58
59 Assignment 2: Loop Subdivision Finally, split all input triangles into four:
60 Assignment 2: Loop Subdivision This becomes the new base mesh for next round 60
61 Assignment 2: Loop Subdivision Pictures Input mesh 61
62 Assignment 2: Loop Subdivision 1st level of subdivision 62
63 Assignment 2: Loop Subdivision 2nd level of subdivision etc. 63
64 Flavors of Subdivision Surfaces Catmull-Clark Quads and triangles Generalizes bicubics to arbitrary topology! Loop, Butterfly Triangles Leif Kobbelt Doo-Sabin, sqrt(3), biquartic... and a whole host of others Used everywhere in movie and game modeling! See 64
65 Subdivision Curves and Surfaces Advantages Arbitrary topology Smooth at boundaries Level of detail, scalable Simple representation Numerical stability, well-behaved meshes Code simplicity Little disadvantage: Procedural definition Not parametric, not implicit Tricky at special vertices 65 Warren et al.
66 Subdivision + Displacement zbrushcentral 66
67 Subdivision + Displacement Final Model Epic Games Control Mesh 67
68 ZBrush Modeling Session v=i8livwn8zmq 68
69 Questions? 69
70 The remainder is for extra credit in Assignment 2! 70
71 Specialized Procedural Definitions Surfaces of revolution Rotate given 2D profile curve Generalized cylinders Given 2D profile and 3D curve, sweep the profile along the 3D curve Assignment 1 extras 71
72 Surface of Revolution 2D curve q(u) provides one dimension Note: works also with 3D curve Rotation R(v) provides 2nd dimension v s(u,v) s(u,v)=r(v)q(u) where R is a matrix, q a vector, and s is a point on the surface 72
73 General Swept Surfaces Trace out surface by moving a profile curve along a trajectory. profile curve q(u) provides one dim trajectory c(u) provides the other Surface of revolution can be seen as a special case where trajectory is a circle s q c s(u,v)=m(c(v))q(u) where M is a matrix that depends on the trajectory c 73
74 General Swept Surfaces How do we get M? Translation is easy, given by c(v) What about orientation? Orientation options: Align profile curve with an axis. Better: Align profile curve with frame that follows the curve s q c s(u,v)=m(c(v))q(u) where M is a matrix that depends on the trajectory c 74
75 Normals for Swept Surfaces Need partial derivatives w.r.t. both u and v n =( P/ u) ( P/ v) Remember to normalize! One given by tangent of profile curve, the other by the trajectory s q c s(u,v)=m(c(v))q(u) where M is a matrix that depends on the trajectory c 75
76 Frames on Curves: Frenet Frame Frame defined by 1st (tangent), 2nd (curvature) and 3rd (torsion) derivatives of a 3D curve Looks like a good idea for swept surfaces... 76
77 Frenet: Problem at Inflection! Normal flips! Bad to define a smooth swept surface An inflection is a point where curvature changes sign 77
78 Smooth Frames on Curves Tangent is assumed reliable Build triplet of vectors include tangent orthonormal coherent over the curve Idea: use cross product to create orthogonal vectors exploit discretization of curve use previous frame to bootstrap orientation See Assignment 1 instructions! 78
79 Questions? 79
80 Implicit Surfaces Implicit definition: f(x,y,z)=0 e.g. for a sphere: x 2 +y 2 +z 2 =R 2 Often defined as metaballs with seed points f(x,y,z)=f1(x,y,z)+f2(x,y,z)+... where fi depends on distance to a seed point Pi P1 P2 From Blinn
81 Implicit Surfaces Pros: Can handle weird topology for animation Easy to do sketchy modeling Some data comes this way (medical & scientific data) Cons: Does not allow us to easily generate a point on the surface 81
82 Implicit Surfaces Most common method to generate mesh from isosurface: Marching Cubes (see link for details) 82
83 Questions? 83
84 Point Set Surfaces Given only a noisy 3D point cloud (no connectivity), can you define a reasonable surface using only the points? Laser range scans only give you points, so this is potentially useful? 84
85 Point Set Surfaces Alexa et al
86 Point Set Surfaces Modern take on implicit surfaces Cool math: Moving Least Squares (MLS), partitions of unity, etc. Ohtake et al Not required in this class, but nice to know. 86
87 Questions? 87
88 That s All for Today Further reading on subvision curves and surfaces Guilherme Marconi 88
TIEA311 Tietokonegrafiikan perusteet kevät 2018
TIEA311 Tietokonegrafiikan perusteet kevät 2018 ( Principles of Computer Graphics Spring 2018) Copyright and Fair Use Notice: The lecture videos of this course are made available for registered students
More informationComputergrafik. 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 informationComputergrafik. 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 informationSubdivision 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 informationSubdivision 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 informationInformation 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 informationSubdivision 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 information3D 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 informationINF3320 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 informationPhysically-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 information3D 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 informationCS354 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 informationSubdivision 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 information3D 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 informationMA 323 Geometric Modelling Course Notes: Day 28 Data Fitting to Surfaces
MA 323 Geometric Modelling Course Notes: Day 28 Data Fitting to Surfaces David L. Finn Today, we want to exam interpolation and data fitting problems for surface patches. Our general method is the same,
More informationComputer 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 informationFrom 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 informationCurve 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 informationUNIVERSITY 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 information09 - 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 information2D 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 informationCurves & Surfaces. MIT EECS 6.837, Durand and Cutler
Curves & Surfaces Schedule Sunday October 5 th, * 3-5 PM * Review Session for Quiz 1 Extra Office Hours on Monday Tuesday October 7 th : Quiz 1: In class 1 hand-written 8.5x11 sheet of notes allowed Wednesday
More informationCurves and Curved Surfaces. Adapted by FFL from CSE167: Computer Graphics Instructor: Ronen Barzel UCSD, Winter 2006
Curves and Curved Surfaces Adapted by FFL from CSE167: Computer Graphics Instructor: Ronen Barzel UCSD, Winter 2006 Outline for today Summary of Bézier curves Piecewise-cubic curves, B-splines Surface
More informationCurves 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 informationSurfaces 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 informationRecursive 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 informationUntil 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 informationSubdivision 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 informationCurves 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 informationCS-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 informationIntroduction 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 informationIntroduction 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 informationParametric 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 informationCurves 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 informationCS354 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 informationExample: 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 informationReading. Parametric surfaces. Surfaces of revolution. Mathematical surface representations. Required:
Reading Required: Angel readings for Parametric Curves lecture, with emphasis on 11.1.2, 11.1.3, 11.1.5, 11.6.2, 11.7.3, 11.9.4. Parametric surfaces Optional Bartels, Beatty, and Barsky. An Introduction
More informationComputer 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 informationAdvanced 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 informationFall 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 informationParametric 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 informationCurves 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 informationu 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 informationFree-Form Deformation and Other Deformation Techniques
Free-Form Deformation and Other Deformation Techniques Deformation Deformation Basic Definition Deformation: A transformation/mapping of the positions of every particle in the original object to those
More informationMathematical 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 information2D Spline Curves. CS 4620 Lecture 13
2D Spline Curves CS 4620 Lecture 13 2008 Steve Marschner 1 Motivation: smoothness In many applications we need smooth shapes [Boeing] that is, without discontinuities So far we can make things with corners
More informationG 2 Bezier Crust on Quad Subdivision Surfaces
Pacific Graphics (2013) B. Levy, X. Tong, and K. Yin (Editors) Short Papers G 2 Bezier Crust on Quad Subdivision Surfaces paper 1348 Figure 1: Two examples of Bezier crust applied on Catmull-Clark subdivision
More informationShape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include
Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include motion, behavior Graphics is a form of simulation and
More informationCurves, 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 information08 - 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 informationSubdivision. 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 informationParametric curves. Brian Curless CSE 457 Spring 2016
Parametric curves Brian Curless CSE 457 Spring 2016 1 Reading Required: Angel 10.1-10.3, 10.5.2, 10.6-10.7, 10.9 Optional Bartels, Beatty, and Barsky. An Introduction to Splines for use in Computer Graphics
More informationCurves. 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 informationIntro 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 informationCentral 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 informationCS-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 informationApproximate 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 informationCOMPUTER 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 informationSubdivision 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 informationSubdivision 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 informationIntro 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 informationObjects 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 informationKnow 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 informationCS123 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 informationSurface Modeling. Polygon Tables. Types: Generating models: Polygon Surfaces. Polygon surfaces Curved surfaces Volumes. Interactive Procedural
Surface Modeling Types: Polygon surfaces Curved surfaces Volumes Generating models: Interactive Procedural Polygon Tables We specify a polygon surface with a set of vertex coordinates and associated attribute
More informationSubdivision 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 informationAdvanced 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 informationLecture 4: Geometry Processing. Kayvon Fatahalian CMU : Graphics and Imaging Architectures (Fall 2011)
Lecture 4: Processing Kayvon Fatahalian CMU 15-869: Graphics and Imaging Architectures (Fall 2011) Today Key per-primitive operations (clipping, culling) Various slides credit John Owens, Kurt Akeley,
More informationPolygon Meshes and Implicit Surfaces
CSCI 420 Computer Graphics Lecture 9 Polygon Meshes and Implicit Surfaces Polygon Meshes Implicit Surfaces Constructive Solid Geometry [Angel Ch. 10] Jernej Barbic University of Southern California 1 Modeling
More informationCS 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 informationPolygon Meshes and Implicit Surfaces
CSCI 420 Computer Graphics Lecture 9 and Constructive Solid Geometry [Angel Ch. 10] Jernej Barbic University of Southern California Modeling Complex Shapes An equation for a sphere is possible, but how
More informationCSE 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 informationCurves & 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 informationSubdivision 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 informationCurves 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 informationModeling. 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 informationMotivation. Parametric Curves (later Surfaces) Outline. Tangents, Normals, Binormals. Arclength. Advanced Computer Graphics (Fall 2010)
Advanced Computer Graphics (Fall 2010) CS 283, Lecture 19: Basic Geometric Concepts and Rotations Ravi Ramamoorthi http://inst.eecs.berkeley.edu/~cs283/fa10 Motivation Moving from rendering to simulation,
More informationBezier 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 informationCurves and Surfaces. CS475 / 675, Fall Siddhartha Chaudhuri
Curves and Surfaces CS475 / 675, Fall 26 Siddhartha Chaudhuri Klein bottle: surface, no edges (Möbius strip: Inductiveload@Wikipedia) Möbius strip: surface, edge Curves and Surfaces Curve: D set Surface:
More informationSung-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 informationReview 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 informationGeometry Processing & Geometric Queries. Computer Graphics CMU /15-662
Geometry Processing & Geometric Queries Computer Graphics CMU 15-462/15-662 Last time: Meshes & Manifolds Mathematical description of geometry - simplifying assumption: manifold - for polygon meshes: fans,
More information11/1/13. Polygon Meshes and Implicit Surfaces. Shape Representations. Polygon Models in OpenGL. Modeling Complex Shapes
CSCI 420 Computer Graphics Lecture 7 and Constructive Solid Geometry [Angel Ch. 12.1-12.3] Jernej Barbic University of Southern California Modeling Complex Shapes An equation for a sphere is possible,
More informationModeling 3D Objects: Part 2
Modeling 3D Objects: Part 2 Patches, NURBS, Solids Modeling, Spatial Subdivisioning, and Implicit Functions 3D Computer Graphics by Alan Watt Third Edition, Pearson Education Limited, 2000 General Modeling
More informationCSE 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 informationCS 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 informationImplicit 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 informationCurve 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 informationCHAPTER 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 informationIntro 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 informationCS337 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 informationDesign 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 informationChapter 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 informationCMSC427 Final Practice v2 Fall 2017
CMSC427 Final Practice v2 Fall 2017 This is to represent the flow of the final and give you an idea of relative weighting. No promises that knowing this will predict how you ll do on the final. Some questions
More informationCS130 : 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 informationAdvanced 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 informationAdvanced Texture-Mapping Curves and Curved Surfaces. Pre-Lecture Business. Texture Modes. Texture Modes. Review quiz
Advanced Texture-Mapping Curves and Curved Surfaces Pre-ecture Business loadtexture example midterm handed bac, code posted (still) get going on pp3! more on texturing review quiz CS148: Intro to CG Instructor:
More information(Refer Slide Time: 00:02:24 min)
CAD / CAM Prof. Dr. P. V. Madhusudhan Rao Department of Mechanical Engineering Indian Institute of Technology, Delhi Lecture No. # 9 Parametric Surfaces II So these days, we are discussing the subject
More informationThe 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 informationSubdivision 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