Surfaces Lecture 6 (Modelling). Reminder: Homogenous Co-ordinates l2D Translations cannot be encoded using matrix multiplication because points at the.

Slides:



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

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
B-Spline Blending Functions
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.
Lecture 29 of 42 Bezier Curves and Splines Wednesday, 02 April 2008
MIT EECS 6.837, Durand and Cutler Curves & Surfaces.
1 Computer Graphics Chapter 7 3D Object Modeling.
Surfaces Chiew-Lan Tai. Surfaces 2 Reading Required Hills Section Hearn & Baker, sections 8.11, 8.13 Recommended Sections 2.1.4, , 3D Computer.
Cornell CS465 Fall 2004 Lecture 16© 2004 Steve Marschner 1 Curved surfaces CS 465 Lecture 16.
Rational Bezier Curves
Fractal Mountains, Splines, and Subdivision Surfaces Jordan Smith UC Berkeley CS184.
Modelling. Outline  Modelling methods  Editing models – adding detail  Polygonal models  Representing curves  Patched surfaces.
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.
Cubic Bezier and B-Spline Curves
Curves Mortenson Chapter 2-5 and Angel Chapter 9
Bezier and Spline Curves and Surfaces Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico.
Modelling: Curves Week 11, Wed Mar 23
Bezier and Spline Curves and Surfaces CS4395: Computer Graphics 1 Mohan Sridharan Based on slides created by Edward Angel.
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.
Curve Surfaces June 4, Examples of Curve Surfaces Spheres The body of a car Almost everything in nature.
Splines III – Bézier Curves
Curves and Surfaces (cont’) Amy Zhang. Conversion between Representations  Example: Convert a curve from a cubic B-spline curve to the Bézier form:
Curve Modeling Bézier Curves
Bresenham’s Algorithm. Line Drawing Reference: Edward Angel’s book: –6 th Ed. Sections 6.8 and 6.9 Assuming: –Clipped (to fall within the window) –2D.
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.
Subdivision/Refinement Dr. S.M. Malaek Assistant: M. Younesi.
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.
(Spline, Bezier, B-Spline)
V. Space Curves Types of curves Explicit Implicit Parametric.
Geometric Modeling using Polygonal Meshes Lecture 1: Introduction Hamid Laga Office: South.
Korea University Jung Lee, Computer Graphics Laboratory 3D Game Engine Design David H. Eberly 8.3 Special Surfaces 2001/11/13.
1 Adding charts anywhere Assume a cow is a sphere Cindy Grimm and John Hughes, “Parameterizing n-holed tori”, Mathematics of Surfaces X, 2003 Cindy Grimm,
Chapter VI Parametric Curves and Surfaces
Subdivision Schemes Basic idea: Start with something coarse, and refine it into smaller pieces for rendering –We have seen how subdivision may be used.
Non-Uniform Rational B-Splines NURBS. NURBS Surfaces NURBS surfaces are based on curves. The main advantage of using NURBS surfaces over polygons, is.
Splines IV – B-spline Curves based on: Michael Gleicher: Curves, chapter 15 in Fundamentals of Computer Graphics, 3 rd ed. (Shirley & Marschner) Slides.
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.
Lee Byung-Gook Dongseo Univ.
1 Subdivision. 2 Subdivision for game Why? Large model require many memory for storage Need to dynamically tessellated during game play Make surface modeling.
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.
Review CSE167: Computer Graphics Instructor: Steve Rotenberg UCSD, Fall 2005.
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.
Parametric Curves CS 318 Interactive Computer Graphics John C. Hart.
(c) 2002 University of Wisconsin
CS 450: Computer Graphics PARAMETRIC SPLINES AND SURFACES
Splines Sang Il Park Sejong University. Particle Motion A curve in 3-dimensional space World coordinates.
University of Texas at Austin CS384G - Computer Graphics Fall 2008 Don Fussell Subdivision surfaces.
Computing & Information Sciences Kansas State University Lecture 30 of 42CIS 636/736: (Introduction to) Computer Graphics Lecture 30 of 42 Wednesday, 09.
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:
1 대상물체의 형상화를 위해 사용되는 기술  인공물체 : 기하학적 Primitive ( 선, 면, 구, 육면체 ) 등을 이 용하여 형상화. 입력물 : 형상화 물체의 3 차원 좌표값 출력물 : 선구조형상 (Wire framed objects) Technique:Geometric.
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.
Introduction to Parametric Curve and Surface Modeling.
© University of Wisconsin, CS559 Spring 2004
Curve & Surface.
Advanced Computer Graphics: Parametric Curves and Surfaces
© University of Wisconsin, CS559 Fall 2004
© University of Wisconsin, CS559 Fall 2004
© University of Wisconsin, CS559 Spring 2004
The Variety of Subdivision Schemes
Three-Dimensional Object Representation
Introduction to Parametric Curve and Surface Modeling
Presentation transcript:

Surfaces Lecture 6 (Modelling)

Reminder: Homogenous Co-ordinates l2D Translations cannot be encoded using matrix multiplication because points at the origin never move. lInstead use homogenous co- ordinates lThese are projections of 3D points along a ray from the origin onto the plane.

Homogenous Projections lAn infinite number of homogenous co-ordinates map to every 2D point. are all equivalent to. lPoints at infinity have and cannot be projected onto the plane because this would involve division by zero. lConversion: lAll of the above also applies to 3D homogenous co- ordinates:

Matrices for Homogenous Co-ordinates where is a standard transformation. lTranslation:

Rational Curves lThe control points of a Bézier or B-spline curve can be encoded in homogenous co-ordinates: lRational curves have the form: lNURBS (Non-Uniform Rational B-spline) curves are the homogenous version of standard B-spline curves.

Behaviour of Rational Curves lThe fourth co-ordinate provides additional control and acts as a weighting term. If then behaves as normal then attracts the curve then repulses the curve is disallowed because it contravenes the convex hull property. lStrictly speaking, the behaviour of weighted control points is relative, rather than absolute. If all are set at then this enforces the same behaviour as all. lRational curves have two advantages: 1.They provide further control over the shape of the curve. 2.They can exactly represent conic sections (e.g. a circle). BUT they are more computationally costly.

Exercise: Knot Vectors and B-splines 1.Determine the number of curve segments, number of spans ( ), curve domain, and continuity at the knots for the B-spline curves with the following knot vectors: (a) (b) 2.Given the control points below (corresponding to these knot vectors) establish convex hulls and draw a rough sketch of the curves in each case: (a)(b)

Solution I: Knot Vectors and B-splines 1.(a) curve segments and. At knot the multiplicity is and continuity is. This is a discontinuity in position (a jump). (b) curve segments and. The curve interpolates and. At knot the multiplicity is and continuity is. 2.(a) (b)

Surfaces lCurves generalise to Surfaces:  A surface is a function of two variables rather than just one.  A rectangular surface has a curve running along each of its four edges.  A rectangular surface can be envisioned as a curve which changes its shape as it is swept through space. Each control point of the initial curve is moved along a path which is itself a curve. lSurface Definition:  An -degree by -degree Bézier patch is defined by control points :

Surface Properties lAdjacent control points can be connected to form a control net (which serves the same purpose as a control polygon). lThe degrees along and do not have to match. lB-spline surfaces are a similar extension of B-spline curves. lContinuity between patches:  C0: continuous in position. The four edge c.p. must match.  C1: continuous in position and tangent vector. The two control points on either side of each edge c.p. must be colinear with the edge point and each other and be equidistant from the edge point. lAlgorithms (e.g. de Casteljau subdivision) and properties (e.g. convex hull) still apply with some small modification.

Example Surface lExample: cubic Bézier patch  The four corner c.p. are interpolated.  Each edge is a curve defined by four c.p.  There are four interior c.p. determining the inner shape. 

Rendering Bézier Surfaces lAdaptive Subdivision: Use a collection of planar polygons to approximate the surface. 1.Check if a quadrilateral with corners at the endpoints is an adequate approximation to the surface. 2.If so, halt recursion. 3.If not, subdivide into two smaller Bézier patches using bi-parametric de Casteljau. Subdivision must alternate in and on successive recursive subdivisions. 4.Need to specify a tolerance for when the quadrilateral is an adequate approximation. 5.The set of resulting (non-planar) quadrilaterals is further subdivided into (planar) triangles. lA B-Spline surface can be converted to a set of Bézier patches by a process of knot insertion and then rendered.

Subdivision Surfaces lMotivation:  Creating objects from Bézier or B-spline patches is very difficult if they have a non-planar topology. For instance a C1 sphere cannot be constructed from non-degenerate patches.  Complex topologies with many-sided patches are possible if a subdivision approach is adopted. lMethod:  Similar to Chaikin’s corner cutting.  Start with a closed control net (which roughly approximates the shape of the object).  Successively refine the control net by introducing new control points. In the limit this produces a smooth surface. lProviso:  The surface may have exception points where it is not as smooth.

Doo-Sabin Subdivision lMostly produces a quadratic B-spline surface. lAlgorithm: Input: an arbitrary open or closed polyhedron. Output: a smooth surface. Refinement: (1)Find the centroid of each face (average its vertices). (2) Find the midpoints of all straight lines connecting the centroid to its defining vertices. (3)Construct a new polyhedron from these midpoints by forming: (a)E-faces. For a given edge there are four midpoints controlled by its endpoints. Connect these midpoints into a rectangle. (b)V-faces. Form a face with the midpoints that surround an original vertex. (c)F-faces. Connect the midpoints belonging to the same face.

Geri’s Game: Subdivision Surfaces lSubdivision Surface Technology: 1.Sharp creases created by delaying subdivision of an edge (wrinkles). 2.Clothing simulation by efficient collision detection between subdivision surfaces (jacket). 3.Constructing smooth scalar fields on subdivision surfaces for shading and texturing (skin). lSource: De Rose, T., Kass, M. and Teoung, T. “Subdivision Surfaces in Character Animation”, SIGGRAPH ’98, pp

Bézier Triangles: Barycentric Co-ords lThe location of a point within a triangle can be expressed in barycentric co-ordinates. lEven though there are three parameters this is still a surface because they are not independent. Depends on and.

Bézier Triangles: Notation lA degree Bézier triangle has control points. lEach control point is labelled by three values with the condition that. lCorner CP have or or and the other indices. lA point on the Bézier triangle at Barycentric co-ordinates has the Bernstein form:

Bézier Triangles: Control Points lLinear: lQuadratic: lCubic:

Bézier Triangles: de Casteljau Algorithm lAbbreviations: lAlgorithm:  Given a triangular array of CP and barycentric co- ordinates :   where and and is the point at on the Bézier triangle.

Bézier Triangle: Quadratic Example l l l l l l