Curves and Surfaces 2.0 CSE3AGR - Paul Taylor 2009.

Slides:



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

Computer Graphics (Spring 2008) COMS 4160, Lecture 6: Curves 1
Anupam Saxena Associate Professor Indian Institute of Technology KANPUR
© 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.
Q about GL to render polygon glBegin(GL_TRIANGLES) glVertex3f(0,0,0); glVertex3f(1,1,0); glVertex3f(1,0,0); glVertex3f(0,1,0); glEnd();
MIT EECS 6.837, Durand and Cutler Curves & Surfaces.
MIT EECS 6.837, Durand and Cutler Curves & Surfaces.
1 Computer Graphics Chapter 7 3D Object Modeling.
Informationsteknologi Monday, December 10, 2007Computer Graphics - Class 161 Today’s class Curve fitting Evaluators Surfaces.
Rational Bezier Curves
Advanced Computer Graphics (Spring 2005) COMS 4162, Lecture 12: Spline Curves (review) Ravi Ramamoorthi Most material.
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.
A story about Non Uniform Rational B-Splines E. Shcherbakov.
Bezier and Spline Curves and Surfaces Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico.
Bezier and Spline Curves and Surfaces CS4395: Computer Graphics 1 Mohan Sridharan Based on slides created by Edward Angel.
1 Representing Curves and Surfaces. 2 Introduction We need smooth curves and surfaces in many applications: –model real world objects –computer-aided.
Curve Surfaces June 4, Examples of Curve Surfaces Spheres The body of a car Almost everything in nature.
Introduction to Modeling. What is CG Modeling? Combination of Sculpting, Architecture, Drafting, and Painting. The core component of computer animation.
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:
Modeling. Topology Topology describes an object’s shape, number of spans, and degree. For polygon objects this includes vertex positions.
Curve Modeling Bézier Curves
1 Additional 3D Topics  Splitting polygons  Off screen rendering for capture of rendered images.  Sound in Java 3D scene graphs  Advanced textures.
Curves and Surfaces CSE3AGR - Paul Taylor Polynomials of Degree n Degree is equal to the highest exponent of a term. Higher exponents result in.
11/19/02 (c) 2002, University of Wisconsin, CS 559 Last Time Many, many modeling techniques –Polygon meshes –Parametric instancing –Hierarchical modeling.
V. Space Curves Types of curves Explicit Implicit Parametric.
Introduction to Computer Graphics with WebGL
12/03/10 ANIMASI TEKNOLOGI IF.UB. Eriq Muhammad Adams J. -
Digital Media Dr. Jim Rowan ITEC 2110 Vector Graphics II.
CS 445/645 Fall 2001 Splines/Film/Animation. Final Exam Thursday, December 13 th from 7 – 10 p.m. –Room Olsson 011 You may use one sheet of notes (8.5.
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.
Computer Graphics Representing Curves and Surfaces.
GPH 338 Computer Animation Survey
Digital Media Dr. Jim Rowan ITEC 2110 Vector Graphics II.
Geometric Modelling 2 INFO410 & INFO350 S Jack Pinches
CS 376 Introduction to Computer Graphics 04 / 25 / 2007 Instructor: Michael Eckmann.
Representation of Curves & Surfaces Prof. Lizhuang Ma Shanghai Jiao Tong University.
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.
11/26/02(C) University of Wisconsin Last Time BSplines.
(c) 2002 University of Wisconsin
Week 4 Low polygon modelling
Splines Sang Il Park Sejong University. Particle Motion A curve in 3-dimensional space World coordinates.
CS 325 Computer Graphics 04 / 30 / 2010 Instructor: Michael Eckmann.
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:
Kansas State University Department of Computing and Information Sciences CIS 736: Computer Graphics Lecture 13 of 42 Wednesday, 15 February 2006 William.
CS559: Computer Graphics Lecture 33: Shape Modeling Li Zhang Spring 2008.
Slide 1Lecture Fall ‘00 Surface Modeling Types: Polygon surfaces Curved surfaces Volumes Generating models: Interactive Procedural.
Digital Media Dr. Jim Rowan ITEC 2110 Vector Graphics II.
Subdivision Schemes. Center for Graphics and Geometric Computing, Technion What is Subdivision?  Subdivision is a process in which a poly-line/mesh is.
Introduction to Parametric Curve and Surface Modeling.
Business and Computing Deanery 3D Modelling Tools Week 5 Low polygon modelling.
© University of Wisconsin, CS559 Spring 2004
CS5500 Computer Graphics May 11, 2006
Representation of Curves & Surfaces
© University of Wisconsin, CS559 Fall 2004
© University of Wisconsin, CS559 Spring 2004
ATCM 6317 Procedural Animation
CSCI 440 Computer Graphics
Dr. Jim Rowan ITEC 2110 Vector Graphics II
Three-Dimensional Object Representation
Introduction to Parametric Curve and Surface Modeling
Dr. Jim Rowan ITEC 2110 Vector Graphics II
Presentation transcript:

Curves and Surfaces 2.0 CSE3AGR - Paul Taylor 2009

Basic Surfaces A surface patch is very similar to the Bezier curves we finished with last week Creating another abstraction!!! – S(x,y) = Fb1, Fb2 – So each Point in 3D space exists on 2 curves b1 and b2

3 Ways to Render 1)Generate a mesh of points on the surface -Use the mesh to render Vertexes and Polygons 2)Recursive subdivision down to sub-pixel polygons (RenderMan Style) 3)Render Pixels Directly from the curve function

How to Generate Surface Points We can recursively subdivide our Bezier Curve We can use a Control Mesh to define the curves which create our Surface

The left image shows the Control Mesh The right image shows the rendered polygon mesh alks/surface/bez_surf.html alks/surface/bez_surf.html

Interactive Bezier Patch etricequations/beziersurfaces/index.html etricequations/beziersurfaces/index.html

That's enough Surfaces for now! Back to the Curves! Joy!

Rational Bezier Curves :Rational_Bezier_curve- conic_sections.svg We are talking about control points with weights These guys can exactly represent conic shapes Downside is complexity

Cubic Bezier-Splines Dot – to – dot – We did C 0 and C 1 Continuity with our Bezier Curves – But C 2 Continuity alluded us! – Attaining C 2 will require us to learn a 3 rd Type of Curve

NURBS Non-uniform Rational Bezier Spline Yes Rational = weighted control points – Non Rational would be an URBS (no one uses URBS!!!)

Good things about NURBS Invariant with Translations and rotations on control points Being rational they can represent conics Flexible Relatively quick (in mathematical terms) to calculate

Knots & Knot Vectors Where one control point looses its effect, and another new control point starts affecting the curve.

er=unknown NURB Basis Matrix 1/6(-x^3 +3x^2 -3x +1) 1/6(3x^3 -6x^2 +4) 1/6(-3x^3 +3x^2 +3x +1) 1/6(x^3) 0/ca eff1142aa9a1c1b580b71 6.png

NURBS don’t start at P0!!!! NURBSBEZIER

Knots or Control Points? When modifying your NURBS there are two important ways Knots – Good for moving specific parts of your curve Control points – Good for changing the shape of the curve a bit rg/wiki/File:Spline01. gif

Knot Insertion It is possible to insert a new knot (generating another control point without disturbing the curve!!! Knot insertion can be used to allow discontinuity in the curve too!!!

Start and End Values Generating start and end points 0,0,0,1,2,3,4,4,4 Now we have a curve in the form of a Bezier You must limit the number of repeat knots to the same as the Degree of the curve!

B-Spline Surfaces Bezier Surface Patches have the same pros/cons as Bezier curves – Simple to implement – Hard to join at C 2 continuity

NURBS Surfaces Again we are basically extruding the Curve functionality over a 3D surface.

Generating Edge Points Again the Extra Knots principle is used to generate start and End Points Note: If you are blending to another Spline you don’t need the End Points. - The overlap in the Control points will connect the curves!

99.png

The Stupid Teapot This Teapot consists of 32 bi-cubic Bezier Patches, specified by 306 vertices. 12 Patches define the Body of the pot, 4 for the spout, 8 for the lid, and the last 4 define the bottom.

Stupid Teapot facts! The Teapot appears in: – Toy Story (The teapot scene) – Monsters Inc – The Simpsons 3D Episode

Given it’s global use the teapot has even been called the 6 th Platonic Solid 2.jpg 2.jpg

Build your own teapot! apot.off apot.off Pimping your teapot does NOT make it cool!

Offline Rendering eanet.com/~ myandper/gal lery.htm 200 Light Sources Radiosity done with 4.8 million photons. From “Ratatouille”

Monsters Inc Scene 500 Million Triangles eanet.com/~ myandper/gal lery.htm

Gameasutra Slashdot for Game Dev

References _specifications _specifications

The End AC/DC Tix Monday 25 th May 9am Coming in Feb 2010