Computergrafik. Matthias Zwicker. Herbst 2010
|
|
- Nickolas Park
- 6 years ago
- Views:
Transcription
1 Computergrafik Matthias Zwicker Universität Bern Herbst 2010
2 Today Curves NURBS Surfaces Parametric surfaces Bilinear patch Bicubic Bézier patch Advanced surface modeling
3 Piecewise Bézier curves Each segment spans four control points Each segment contains four Bernstein polynomials Each control point belongs to one Bernstein polynomial x 2 (t) u=0 x 0 (t) x 1 (t) x 3 (t) u=12 Bernstein polynomials 0 4 Segment u
4 B-splines Same idea, but different polynomial blending functions UniformB-splines have only one type of blending function: B-spline (basis) function B-spline function of degree n is C n-1 continuous Local support, at each point u exactly n+1 functions are non-zero Uniform B-spline (basis) functions of degree 3 u
5 B-splines Weighted average of control points p i using B- spline functions b i i( (u) (no details here) Positive, partition of unity => convex hull property Matrix form (note different basis matrix; caution: last lecture, matrices were transposed) p i p i p i p p i 3 T 1 x(u) t 3 t 2 t 1 6 B B spline G B spline where t u i and i u
6 B-splines Widely used for curve and surface modeling Advantages over Bézier curves Built-in continuity Local support: curve only affected by nearby control points Intuitive behavior Techniques for inserting new points, joining curves, etc. Doesn t interpolate endpoints Not a problem for closed curves p Can be generalized to interpolate any point along the curve (non-uniform curves, later)
7 Further generalizations Rational B-splines Non-uniform B-splines Non-uniform rational B-splines (NURBS) Interactive explanation Interactive explanation
8 Rational curves Big drawback of all polynomial curves Can t make circles, ellipses, nor arcs, nor conic sections Rational B-spline Add a weight to each control point Homogeneous point: use w Polynomial curve (b-spline, Bézier) Rational curve Not polynomial l any more!
9 Rational curves Weight causes point to pull more (or less) With proper points & weights, can do circles Polynomial curve Rational curve pull less pull more
10 Rational curves Can generate curves for circles etc. with appropriate weights Need extra user interface to adjust the weights Often, hand-drawn curves are unweighted
11 NURBS Non-Uniform Rational B-splines Nonuniform: Introduce knot vector Knot vector provides additional degrees of freedom to define B-spline basis (blending) functions
12 NURBS Knot vector is a vector of locations on the u axis, usually called t i B-spline function of degree n uses n+2 knots (Uniform) B-splines use a uniform knot vector Nonuniform B-splines use an arbitrary knot vector Knot vector determines shape of basis functions knots Uniform knot vector u Nonuniform knot vector u
13 Nonuniform B-spline bases Construction Recursive Generate higher order bases step by step from lower order bases Can prove Partition of unity (i.e., convex hull property) Built-in continuity
14 Nonuniform B-spline bases Nonuniform knot vector Nonuniform, linear B-spline bases Linear weighting function u u Multiply & add Quadratic B-spline basis u
15 For your reference... Recursive definition of non-uniform B-spline basis functions b basis functions b j,n Function b j,n has degree n Knot vector {t j } Note: notation here uses t instead of u
16 Knot vectors Uniform B-splines have knot vector t j =j Cubic Bézier curves {t j }= [ ] [0,0,0,0,1,1,1,1] Can make corners (C 1 discontinuity) Allows mixing interpolating (e.g. at endpoints) and approximating 4 coinciding knots Bézier curve as B-spline with nonuniform knot vector u
17 NURBS Math is more complicated Very widely used for curve and surface modeling Supported by virtually all 3D modeling tools Open source modeling tool: Techniques for cutting, inserting, merging, g, revolving, etc Applets en html
18 Today Curves NURBS Surfaces Parametric surfaces Bilinear patch Bicubic Bézier patch Advanced surface modeling
19 Curved surfaces Curves Described by a 1D series of control points A function x(t) Segments joined together to form a longer curve Surfaces Described by a 2D mesh of control points Parameters have two dimensions (two dimensional parameter domain) A function x(u,v) Patches joined together to form a bigger surface
20 Parametric surface patch x(u,v) describes a point in space for any given (u,v) pair u,v each range from 0 to 1 v x(0.8,0.7) z y u v 1 x 0 1 u 2D parameter domain
21 Parametric surface patch x(u,v) describes a point in space for any given (u,v) pair u,v each range from 0 to 1 v x(0.8,0.7) x(0.4,v) 4 z y u x(u,0.25) v 1 Parametric curves x 0 1 u 2D parameter domain For fixed u 0, have a v curve x(u 0,v) For fixed v 0, have a u curve x(u,v 0 ) For any point on the surface, there is one pair of parametric curves that go through point
22 Tangents The tangent to a parametric curve is also tangent to the surface For any point on the surface, there are a pair of (parametric) tangent vectors Note: not necessarily perpendicular to each other v x v x u u
23 Tangents Notation Tangent along u direction x (u, v) u u x(u, v) x u(u, v) or or Tangent along v direction x (u, v) v or or v x(u, v) x v(u, v) Tangents are vector valued functions, i.e., vectors!
24 Surface normal Cross product of the two tangent vectors x u (u, v) x v (u, v) Order matters (determines normal orientation) Usually, want unit normal Need to normalize by dividing through length n x v x u
25 Today Curves NURBS Surfaces Parametric surfaces Bilinear patch Bicubic Bézier patch Advanced surface modeling
26 Bilinear patch Control mesh with four points p 0, p 1, p 2, p 3 Compute x(u,v) using a two-step construction p 2 p 3 v p 0 p1 u
27 Bilinear patch (step 1) For a given value of u, evaluate the linear curves on the two u-direction edges Use the same value u for both: q 1 =Lerp(u,p 2,p 3 ) q 1 p 2 p 3 v p 0 q 0 p1 u q 0 =Lerp(u,p 0,p 1 )
28 Bilinear patch (step 2) Consider that q 0, q 1 define a line segment Evaluate it using v to get x x Lerp(v,q 0,q 1 ) q 1 p 2 p 3 v x p 0 q 0 p1 u
29 Bilinear patch Combining the steps, we get the full formula x(u,v) Lerp(v, Lerp(u,p 0,p 1 ), Lerp(u,p 2,p 3 )) q 1 p 2 p 3 v x p 0 q 0 p1 u
30 Bilinear patch Try the other order Evaluate first in the v direction r 0 Lerp(v,p 0,p 2 ) r 1 Lerp(v,p 1,p 3 ) p 2 p 3 r 0 r v 1 p 0 p1 u
31 Bilinear patch Consider that r 0, r 1 define a line segment Evaluate it using u to get x x Lerp(u,r( 0,r 1 ) p 2 p 3 r x 0 v r 1 p 0 p1 u
32 Bilinear patch The full formula for the v direction first: x(u,v) ( ) Lerp(u, Lerp(v,p p 0,pp 2 ), Lerp(v,p p 1,pp 3 )) p 2 p 3 r x 0 v r 1 p 0 p1 u
33 Bilinear patch It works out the same either way! x(u,v) Lerp(v, Lerp(u,p 0,p 1 ), Lerp(u,p 2,p 3 )) x(u,v) Lerp(u, Lerp(v,p 0,p 2 ), Lerp(v,p 1,p 3 )) q 1 p 2 p 3 r x 0 v r 1 p 0 q 0 p1 u
34 Bilinear patch Visualization
35 Bilinear patches Weighted sum of control points Bilinear polynomial Matrix form exists, too
36 Properties Interpolates the control points The boundaries are straight line segments If all 4 points of the control mesh are co-planar, the patch is flat If the points are not coplanar, get a curved surface saddle shape, AKA hyperbolic paraboloid The parametric curves are all straight line segments! a (doubly) ruled surface: has (two) straight lines through every point Not terribly useful as a modeling primitive
37 Today Curves NURBS Surfaces Parametric surfaces Bilinear patch Bicubic Bézier patch Advanced surface modeling
38 Bicubic Bézier patch Grid of 4x4 control points, p 0 through p 15 Four rows of control points define Bézier curves along u p 0,p 1,p 2,p 3 ; p 4,p 5,p 6,p 7 ; p 8,p 9,p 10,p 11 ; p 12,p 13,p 14,p 15 Four columns define Bézier curves along v p 0,p 4,p 8,p 12 ; p 1,p 6,p 9,p 13 ; p 2,p 6,p 10,p 14 ; p 3,p 7,p 11,p 15 p 12 p13 v p 8 p 9 p 4 p 5 p 14 p15 p 0 p 1 p 10 p 11 p 6 p 7 u p 2 p 7 p 3
39 Bicubic Bézier patch (step 1) Evaluate four u-direction Bézier curves at u Get points q 0 q 3 q 0 Bez(u,p 0,p 1,p 2,p 3 ) q 1 Bez(u,p 4,p 5,p 6,p 7 ) q 2 Bez(u,p( 8,p 9,p 10,p 11 ) q 3 Bez(u,p 12,p 13,p 14,p 15 ) p 12 p13 q 3 v p 8 p 9 p 4 p 5 p 0 p 1 q 1 q 2 p 14 p 10 p 11 p15 u q 0 p 2 p 6 p 7 p 3
40 Bicubic Bézier patch (step 2) Points q 0 q 3 define a Bézier curve Evaluate it at v x(u,v) Bez(v,q 0,q 1,q 2,q 3 ) p 12 p13 q 3 v p 8 p 9 p 4 p 5 p 0 p 1 q 1 q 2 x p 14 p 10 p 11 p15 u q 0 p 2 p 6 p 7 p 3
41 Bicubic Bézier patch Same result in either order (evaluate u before v or vice versa) q 0 Bez(u,p 0,p 1,p 2,p 3 ) q 1 Bez(u,p 4,p 5,p 6,p 7 ) r 0 Bez(v,p 0,p 4,p 8,p 12 ) r 1 Bez(v,p 1,p 5,p 9,p 13 ) q 2 Bez(u,pp 8,pp 9,pp 10,pp 11 ) r 2 Bez(v,pp 2,pp 6,pp 10,pp 14 ) q 3 Bez(u,p 12,p 13,p 14,p 15 ) x(u,v) Bez(v,q 0,q 1,q 2,q 3 ) r 3 Bez(v,p 3,p 7,p 11,p 15 ) x(u,v) Bez(u,r 0,r 1,r 2,r 3 ) v p 12 r p13 0 r 3 1 p 8 p 9 xq p 4 p 5 p 0 p 1 q 1 q 2 p 14 p15 r 2 r 3 p 10 p 11 u q 0 p 2 p 6 p 7 p 3
42 Tensor product formulation Corresponds to weighted average formulation Construct two-dimensional weighting g function as product of two one-dimensional functions Bernstein polynomials B i, B j as for curves j Same tensor product construction applies to higher h order Bézier and NURBS surfaces
43 Bicubic Bézier patch: properties Convex hull: any point on the surface will fall within the convex hull of the control points Interpolates 4 corner points Approximates other 12 points, which act as handles The boundaries of the patch are the Bézier curves defined by the points on the mesh edges The parametric curves are all Bézier curves
44 Tangents of Bézier patch Remember parametric curves x(u,v 0 ), x(u 0,v) where v 0, u 0 is fixed Tangents to surface = tangents to parametric curves Tangents are partial derivatives of x(u,v) Normal is cross product of the tangents x p p v v v 0 p 8 p 9 x p 14 p 4 p 5 x p15 p 0 p 1 u u 0 p 2 p 6 p 10 p 7 u p 11 p 3
45 Tangents of Bézier patch x v q 0 Bez(u,p 0,p 1,p 2,p 3 ) q 1 Bez(u,pp 4,pp 5,pp 6,pp 7 ) q 2 Bez(u,p 8,p 9,p 10,p 11 ) q 3 Bez(u,p 12,p 13,p 14,p 15 ) (u,v) Be z (v,q 0,q 1,q 2,q 3 ) x u r 0 Bez(v,p 0,p 4,p 8,p 12 ) r 1 Bez(v,pp 1,pp 5,pp 9,pp 13 ) r 2 Bez(v,p 2,p 6,p 10,p 14 ) r 3 Bez(v,p 3,p 7,p 11,p 15 ) (u,v) Be z (u,r 0,r 1,r 2,r 3 ) v p 13 p 12 r 0 r 1 q 3 p 8 p 9 x p 14 p 4 x p 5 p15 q 2 u q r 2 r p p 1 u q 0 p 2 x v p 6 p 10 p 7 p 11 p 3
46 Tessellating a Bézier patch Uniform tessellation is most straightforward Evaluate points on a grid of u, v coordinates Compute tangents at each point, take cross product to get pervertex normal Draw triangle strips (several choices of direction) Adaptive tessellation/recursive ti i subdivision i i Potential for cracks if patches on opposite sides of an edge divide differently Tricky to get right, but can be done
47 Piecewise Bézier surface Lay out grid of adjacent meshes of control points For C 0 continuity, must share points on the edge Each edge of a Bézier patch is a Bézier curve based only on the edge mesh points So if adjacent meshes share edge points, the patches will line up exactly But we have a crease Grid of control points Piecewise Bézier surface
48 C 1 continuity Want parametric curves that cross each edge to have C 1 continuity Handles must be equal-and-opposite across edge C 0 continuous C 1 continuous [
49 Modeling with Bézier patches Original Utah teapot specified as Bézier Patches
50 Today Curves NURBS Surfaces Parametric surfaces Bilinear patch Bicubic Bézier patch Advanced surface modeling
51 Advanced surface modeling B-spline/NURBS patches instead of Bézier For the same reason as using B-spline/NURBS curves More flexible (can model spheres) Better mathematical properties, continuity Higher order NURBS patch
52 Modeling headaches Original Teapot is not watertight Spout & handle intersect with body No bottom Hole in spout Gap between lid and body
53 Modeling headaches NURBS surfaces are flexible Conic sections Can blend, merge, trim but Any surface will be made of quadrilateral patches (quadrilateral topology) Because of tensor product formulation p Grid of horizontal and vertical curves
54 Quadrilateral topology Makes it hard to join or abut curved pieces build surfaces with awkward topology or build surfaces with awkward topology or structure
55 Advanced surface modeling Trim curves Cut away part of surface Implement as part of tessellation/rendering Still hard to fit different parts together
56 Subdivision surfaces Goal Create smooth surfaces from small number of control points, like splines More flexibility for the topology of the control points (not restricted to quadrilateral grid) Idea Start with initial coarse polygon mesh Create smooth surface recursively by 1. Splitting (subdividing) mesh into finer polygons 2. Smoothing the vertices of the polygons 3. Repeat from 1.
57 Subdivision surfaces Input mesh Subdivision Subdivision Subdivision & smoothing & smoothing & smoothing Limit surface
58 Subdivision schemes Various schemes available to subdivide and smooth Doo-Sabin Loop All provide certain guarantees for smoothness of limit surface Demo
59 Subdivision surfaces Arbitrary mesh of control points Arbitrary topology or connectivity Not restricted to quadrilateral topology No global u,vparameters Work by recursively subdividing mesh faces Used in particular for character animation One surface rather than collection of patches Can deform geometry without creating cracks Subdivision surfaces
60 Next time More shaders
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 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 informationToday. B-splines. B-splines. B-splines. Computergrafik. Curves NURBS Surfaces. Bilinear patch Bicubic Bézier patch Advanced surface modeling
Comptergrafik Matthias Zwicker Uniersität Bern Herbst 29 Cres Srfaces Parametric srfaces Bicbic Bézier patch Adanced srface modeling Piecewise Bézier cres Each segment spans for control points Each segment
More informationCSE 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 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 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 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 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 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 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 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 informationRational Bezier Curves
Rational Bezier Curves Use of homogeneous coordinates Rational spline curve: define a curve in one higher dimension space, project it down on the homogenizing variable Mathematical formulation: n P(u)
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 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 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 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 informationDgp _ lecture 2. Curves
Dgp _ lecture 2 Curves Questions? This lecture will be asking questions about curves, their Relationship to surfaces, and how they are used and controlled. Topics of discussion will be: Free form Curves
More informationB-spline Curves. Smoother than other curve forms
Curves and Surfaces B-spline Curves These curves are approximating rather than interpolating curves. The curves come close to, but may not actually pass through, the control points. Usually used as multiple,
More informationThe Free-form Surface Modelling System
1. Introduction The Free-form Surface Modelling System Smooth curves and surfaces must be generated in many computer graphics applications. Many real-world objects are inherently smooth (fig.1), and much
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 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 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 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 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 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 informationLecture 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 informationCurves and Surfaces 1
Curves and Surfaces 1 Representation of Curves & Surfaces Polygon Meshes Parametric Cubic Curves Parametric Bi-Cubic Surfaces Quadric Surfaces Specialized Modeling Techniques 2 The Teapot 3 Representing
More 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 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 informationSubdivision 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 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 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 informationSpline 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 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 informationIntroduction p. 1 What Is Geometric Modeling? p. 1 Computer-aided geometric design Solid modeling Algebraic geometry Computational geometry
Introduction p. 1 What Is Geometric Modeling? p. 1 Computer-aided geometric design Solid modeling Algebraic geometry Computational geometry Representation Ab initio design Rendering Solid modelers Kinematic
More 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 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 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 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 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 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 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 informationSplines. Parameterization of a Curve. Curve Representations. Roller coaster. What Do We Need From Curves in Computer Graphics? Modeling Complex Shapes
CSCI 420 Computer Graphics Lecture 8 Splines Jernej Barbic University of Southern California Hermite Splines Bezier Splines Catmull-Rom Splines Other Cubic Splines [Angel Ch 12.4-12.12] Roller coaster
More 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 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 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 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 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 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 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 informationTo Do. Resources. Algorithm Outline. Simplifications. Advanced Computer Graphics (Spring 2013) Surface Simplification: Goals (Garland)
Advanced omputer Graphics (Spring 213) S 283, Lecture 6: Quadric Error Metrics Ravi Ramamoorthi To Do Assignment 1, Due Feb 22. Should have made some serious progress by end of week This lecture reviews
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 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 informationRepresenting Curves Part II. Foley & Van Dam, Chapter 11
Representing Curves Part II Foley & Van Dam, Chapter 11 Representing Curves Polynomial Splines Bezier Curves Cardinal Splines Uniform, non rational B-Splines Drawing Curves Applications of Bezier splines
More informationThe 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 informationGL9: Engineering Communications. GL9: CAD techniques. Curves Surfaces Solids Techniques
436-105 Engineering Communications GL9:1 GL9: CAD techniques Curves Surfaces Solids Techniques Parametric curves GL9:2 x = a 1 + b 1 u + c 1 u 2 + d 1 u 3 + y = a 2 + b 2 u + c 2 u 2 + d 2 u 3 + z = a
More 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 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 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 informationBézier Splines. B-Splines. B-Splines. CS 475 / CS 675 Computer Graphics. Lecture 14 : Modelling Curves 3 B-Splines. n i t i 1 t n i. J n,i.
Bézier Splines CS 475 / CS 675 Computer Graphics Lecture 14 : Modelling Curves 3 n P t = B i J n,i t with 0 t 1 J n, i t = i=0 n i t i 1 t n i No local control. Degree restricted by the control polygon.
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 informationOUTLINE. Quadratic Bezier Curves Cubic Bezier Curves
BEZIER CURVES 1 OUTLINE Introduce types of curves and surfaces Introduce the types of curves Interpolating Hermite Bezier B-spline Quadratic Bezier Curves Cubic Bezier Curves 2 ESCAPING FLATLAND Until
More 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 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 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 informationCS 475 / CS Computer Graphics. Modelling Curves 3 - B-Splines
CS 475 / CS 675 - Computer Graphics Modelling Curves 3 - Bézier Splines n P t = i=0 No local control. B i J n,i t with 0 t 1 J n,i t = n i t i 1 t n i Degree restricted by the control polygon. http://www.cs.mtu.edu/~shene/courses/cs3621/notes/spline/bezier/bezier-move-ct-pt.html
More informationLECTURE #6. Geometric Modelling for Engineering Applications. Geometric modeling for engineering applications
LECTURE #6 Geometric modeling for engineering applications Geometric Modelling for Engineering Applications Introduction to modeling Geometric modeling Curve representation Hermite curve Bezier curve B-spline
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 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 informationFurther Graphics. Bezier Curves and Surfaces. Alex Benton, University of Cambridge Supported in part by Google UK, Ltd
Further Graphics Bezier Curves and Surfaces Alex Benton, University of Cambridge alex@bentonian.com 1 Supported in part by Google UK, Ltd CAD, CAM, and a new motivation: shiny things Expensive products
More informationProperties of Blending Functions
Chapter 5 Properties of Blending Functions We have just studied how the Bernstein polynomials serve very nicely as blending functions. We have noted that a degree n Bézier curve always begins at P 0 and
More informationIntroduction to the Mathematical Concepts of CATIA V5
CATIA V5 Training Foils Introduction to the Mathematical Concepts of CATIA V5 Version 5 Release 19 January 2009 EDU_CAT_EN_MTH_FI_V5R19 1 About this course Objectives of the course Upon completion of this
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 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 informationCurve Construction via Local Fitting
Curve Construction via Local Fitting Suppose we are given points and tangents Q k, and T k (k = 0,..., n), and a fitting tolerance ε. We want to fit this data with the minimum (in some sense) number of
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 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 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 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 informationRational Bezier Surface
Rational Bezier Surface The perspective projection of a 4-dimensional polynomial Bezier surface, S w n ( u, v) B i n i 0 m j 0, u ( ) B j m, v ( ) P w ij ME525x NURBS Curve and Surface Modeling Page 97
More informationRoadmap for tonight. What are Bezier curves (mathematically)? Programming Bezier curves (very high level view).
Roadmap for tonight Some background. What are Bezier curves (mathematically)? Characteristics of Bezier curves. Demo. Programming Bezier curves (very high level view). Why Bezier curves? Bezier curves
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 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 informationECE 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 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 informationParametric curves. Reading. Curves before computers. Mathematical curve representation. CSE 457 Winter Required:
Reading Required: Angel 10.1-10.3, 10.5.2, 10.6-10.7, 10.9 Parametric curves CSE 457 Winter 2014 Optional Bartels, Beatty, and Barsky. An Introduction to Splines for use in Computer Graphics and Geometric
More informationRemark. Jacobs University Visualization and Computer Graphics Lab : ESM4A - Numerical Methods 331
Remark Reconsidering the motivating example, we observe that the derivatives are typically not given by the problem specification. However, they can be estimated in a pre-processing step. A good estimate
More informationCS 465 Program 4: Modeller
CS 465 Program 4: Modeller out: 30 October 2004 due: 16 November 2004 1 Introduction In this assignment you will work on a simple 3D modelling system that uses simple primitives and curved surfaces organized
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 informationRendering 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 informationCOMP3421. Global Lighting Part 2: Radiosity
COMP3421 Global Lighting Part 2: Radiosity Recap: Global Lighting The lighting equation we looked at earlier only handled direct lighting from sources: We added an ambient fudge term to account for all
More informationComputer 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 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 information15.10 Curve Interpolation using Uniform Cubic B-Spline Curves. CS Dept, UK
1 An analysis of the problem: To get the curve constructed, how many knots are needed? Consider the following case: So, to interpolate (n +1) data points, one needs (n +7) knots,, for a uniform cubic B-spline
More informationAn introduction to interpolation and splines
An introduction to interpolation and splines Kenneth H. Carpenter, EECE KSU November 22, 1999 revised November 20, 2001, April 24, 2002, April 14, 2004 1 Introduction Suppose one wishes to draw a curve
More 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 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 informationInteractive Graphics. Lecture 9: Introduction to Spline Curves. Interactive Graphics Lecture 9: Slide 1
Interactive Graphics Lecture 9: Introduction to Spline Curves Interactive Graphics Lecture 9: Slide 1 Interactive Graphics Lecture 13: Slide 2 Splines The word spline comes from the ship building trade
More 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 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 information