Curves and Surfaces (cont’) Amy Zhang. Conversion between Representations  Example: Convert a curve from a cubic B-spline curve to the Bézier form:

Slides:



Advertisements
Similar presentations
Lecture Notes #11 Curves and Surfaces II
Advertisements

© University of Wisconsin, CS559 Spring 2004
COMPUTER GRAPHICS CS 482 – FALL 2014 OCTOBER 8, 2014 SPLINES CUBIC CURVES HERMITE CURVES BÉZIER CURVES B-SPLINES BICUBIC SURFACES SUBDIVISION SURFACES.
Geometric Modeling Notes on Curve and Surface Continuity Parts of Mortenson, Farin, Angel, Hill and others.
Cubic Curves CSE167: Computer Graphics Instructor: Steve Rotenberg UCSD, Fall 2006.
Overview June 9- B-Spline Curves June 16- NURBS Curves June 30- B-Spline Surfaces.
© University of Wisconsin, CS559 Spring 2004
Jehee Lee Seoul National University
1 Curves and Surfaces. 2 Representation of Curves & Surfaces Polygon Meshes Parametric Cubic Curves Parametric Bi-Cubic Surfaces Quadric Surfaces Specialized.
MIT EECS 6.837, Durand and Cutler Curves & Surfaces.
Cornell CS465 Fall 2004 Lecture 16© 2004 Steve Marschner 1 Curved surfaces CS 465 Lecture 16.
Modelling. Outline  Modelling methods  Editing models – adding detail  Polygonal models  Representing curves  Patched surfaces.
2003 by Jim X. Chen: Introduction to Modeling Jim X. Chen George Mason University.
Modeling of curves Needs a ways of representing curves: Reproducible - the representation should give the same curve every time; Computationally Quick;
1 Lecture 13 Modeling Curved Lines and Surfaces. 2 Types of Surfaces Ruled Surfaces B-Splines and Bezier Curves Surfaces of Revolution.
Geometric Modeling Surfaces Mortenson Chapter 6 and Angel Chapter 9.
Modelling: Curves Week 11, Wed Mar 23
Parametric Surfaces January 16, 2003 Stephen Gordon.
1 Representing Curves and Surfaces. 2 Introduction We need smooth curves and surfaces in many applications: –model real world objects –computer-aided.
09/16/02 Dinesh Manocha, COMP258 Surfaces Locally a 2D manifold: i.e. approximating a plane in the ngbd. of each point. A 2-parameter family of points.
Parts of Mortenson Chapter 6-9,
Modeling and representation 1 – comparative review and polygon mesh models 2.1 Introduction 2.2 Polygonal representation of three-dimensional objects 2.3.
Curve Modeling Bézier Curves
11/19/02 (c) 2002, University of Wisconsin, CS 559 Last Time Many, many modeling techniques –Polygon meshes –Parametric instancing –Hierarchical modeling.
19/13/ :20 UML Graphics II Parametric Curves and Surfaces Session 3.
Surfaces Lecture 6 (Modelling). Reminder: Homogenous Co-ordinates l2D Translations cannot be encoded using matrix multiplication because points at the.
Subdivision/Refinement Dr. S.M. Malaek Assistant: M. Younesi.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Curve Modeling B-Spline Curves
A D V A N C E D C O M P U T E R G R A P H I C S CMSC 635 January 15, 2013 Spline curves 1/23 Curves and Surfaces.
V. Space Curves Types of curves Explicit Implicit Parametric.
Quadratic Surfaces. SPLINE REPRESENTATIONS a spline is a flexible strip used to produce a smooth curve through a designated set of points. We.
Chapter VI Parametric Curves and Surfaces
CS559: Computer Graphics Lecture 24: Shape Modeling Li Zhang Spring 2010.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Parametric Surfaces Define points on the surface in terms of two parameters Simplest case: bilinear interpolation s t s x(s,t)x(s,t) P 0,0 P 1,0 P 1,1.
Representation of Curves & Surfaces Prof. Lizhuang Ma Shanghai Jiao Tong University.
04/18/02(c) 2002 University of Wisconsin Last Time Hermite Curves Bezier Curves.
Curves: ch 4 of McConnell General problem with constructing curves: how to create curves that are “smooth” CAD problem Curves could be composed of segments.
Rendering Curves and Surfaces Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico 1 Angel:
11/6/ :55 Graphics II Introduction to Parametric Curves and Surfaces Session 2.
Parametric Curves & Surfaces
Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 Parametric Curves & Surfaces Greg Humphreys University of Virginia CS 445, Spring.
Computing & Information Sciences Kansas State University Lecture 31 of 42CIS 636/736: (Introduction to) Computer Graphics Lecture 32 of 42 Wednesday, 11.
11/26/02(C) University of Wisconsin Last Time BSplines.
1 Graphics CSCI 343, Fall 2015 Lecture 34 Curves and Surfaces III.
Splines Sang Il Park Sejong University. Particle Motion A curve in 3-dimensional space World coordinates.
Rendering Bezier Curves (1) Evaluate the curve at a fixed set of parameter values and join the points with straight lines Advantage: Very simple Disadvantages:
CS559: Computer Graphics Lecture 33: Shape Modeling Li Zhang Spring 2008.
Curves University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2013 Tamara Munzner.
Object Modeling: Curves and Surfaces CEng 477 Introduction to Computer Graphics.
Slide 1Lecture Fall ‘00 Surface Modeling Types: Polygon surfaces Curved surfaces Volumes Generating models: Interactive Procedural.
Introduction to Parametric Curve and Surface Modeling.
8. Surfaces and Surface Modeling Assoc.Prof.Dr. Ahmet Zafer Şenalp Mechanical Engineering Department.
COMPUTER GRAPHICS CHAPTERS CS 482 – Fall 2017 SPLINES
© University of Wisconsin, CS559 Spring 2004
Introduction to Parametric Curve and Surface Modeling
Curve & Surface.
Chapter 10-2: Curves.
Advanced Computer Graphics: Parametric Curves and Surfaces
© University of Wisconsin, CS559 Fall 2004
© University of Wisconsin, CS559 Fall 2004
Rendering Curves and Surfaces
© University of Wisconsin, CS559 Spring 2004
Implicit Functions Some surfaces can be represented as the vanishing points of functions (defined over 3D space) Places where a function f(x,y,z)=0 Some.
UNIT-5 Curves and Surfaces.
Three-Dimensional Object Representation
Introduction to Parametric Curve and Surface Modeling
6. Surfaces and Surface Modeling
Overview June 9- B-Spline Curves June 16- NURBS Curves
Presentation transcript:

Curves and Surfaces (cont’) Amy Zhang

Conversion between Representations  Example: Convert a curve from a cubic B-spline curve to the Bézier form:

From Curve to Surface  Recall that a parametrically defined curve in 3D is given by three univariate functions:  where 0 ≤u≤1  By varying u from 0 to 1, a curve is swept out in 3D  Similarly, a parametric surface is defined by three bivariate functions:  where 0 ≤u≤1 and 0 ≤v≤1  By varying u from 0 to 1while keeping v constant, a curve is swept out in 3D  An infinity of such curves exists as v is varied from 0 to 1, and this defines a surface in 3D

Parametric Surfaces  A single surface element, also known as a patch, is the surface traced out as the parameters (u,v) take all values between 0 and 1  Complex surfaces are modelled using nets of individual patches analogous to the way in which complex curves are made up of individual curve segments The teapot is made up of 32 Bézier patches

 Like in the case of curves, cubic basis functions, which are a good compromise between complexity and flexibility, are most commonly used in compute graphics  Bicubic parametric patches are defined over a rectangular domain in u,v-space and the boundary curves of the patch are themselves cubic polynomial curves

Parametric Surfaces  Advantages of patch representation over polygon mesh representation:  Conciseness: A parametric representation of a surface is “exact” and “economic”, and mass properties, like surface area and volume, are extractable from such a description

Parametric Surfaces  Deformation and shape change: Deformation of a parametric surface can be achieved by moving the control points that define it. The deformations will appear just as smooth and accurately represented as the un-deformed counterpart when rendered

Bicubic Surfaces  A bicubic parametric patch can be expressed in terms of the basis function and the control points:  where pij is a set of 16 control points:  The net of control points forms a polyhedron in cartesian space and the position of the points in this space control shape of the surface

Bicubic Surfaces  Example: The effect of lifting one of the control point of a Bézier patch

Bicubic Surfaces  Matrix formulation:  where  The matrix M is the characteristic matrix of the particular form e.g.,MB for Bézier patch and MBS for B-spline patch  The matrix P is a 4×4 matrix that contains the 16 control points

Bézier Patch  A Bézier patch is defined in matrix notion by:  and alternatively by:  Note that the boundary curves of a Bézier patch are themselves Bézier curves, e.g.,  The Bézier patch has analogous properties to and advantages of the Bézier curve

Bézier Patch  Differentiation:

Bézier Patch  Differentiation at the corners:

Bézier Patch  Joining 2 Bézier patches Q and R with control points q ij and r ij  Zero order continuity: q 3i = r 0i for i =0,…,3  First order continuity:(q 3i –q 2i ) =k(r 1i –r 0i) for i =0,…,3  The above constraints may be too severe: Any corner point cannot be moved without controlling 8 adjacent points to maintain continuity

Bézier Patch  Recall that a Bézier curve can be rendered efficiently by recursive subdivision

Bézier Patch  Similarly, a Bézier Patch can be rendered by successively subdividing the control polygons into a series of polygons that represent the Bézier surface to a given tolerance in curvature.  The process of recursive subdivision of a Bézier Patch is called patch splitting.  The result polygons from patch splitting can be passed to a conventional polygon render and standard rendering techniques can be used to render surfaces made up of nets of patches.

Bézier Patch  Due to the orthogonality of the parametric directions u& v, a Bézier patch can be split in one parameter without considering the other

Bézier Patch  Consider a patch to be made up of 4 curves, the control points of which correspond to the rows / columns of P  Splitting is then applied to these curves separately, yielding 2 sets of 4 curves q ij & r ij  These 2 sets of 4 curves then give 2 subpatches of the original patch

Bézier Patch  A given patch is subdivided down until the convex hull is deem to be sufficiently planar and the edges are sufficiently linear:  Flatness is tested by forming a plane between 3 corner control points and measuring how far the remaining control points deviate from this plane  Linearity of the edges is tested by measuring how far the interior control points of the edge deviate from the line joining the end control points

Bézier Patch  The patch is then turned into 2 triangles by taking the 4 corners of the patch as the triangle vertices  The surface normal at each corner is then computed as the cross product of the 2 tangent vectors at the corner, e.g.,

Bézier Patch  The cracking problem will appear due to the independent subdivision of adjacent subpatches:

Uniform B-spline Patch  A uniform B-splinepatch is defined in matrix notion by:  A composite B-spline surface is C2 continuous across the patches  The B-spline patch has analogous properties to and advantages of the B-spline curve  Converting a B-spline patch to a Bézier patch for rendering: