Modeling Curves and Surfaces

Similar documents
Computer Graphics. Geometric Modeling. Page 1. Copyright Gotsman, Elber, Barequet, Karni, Sheffer Computer Science - Technion. An Example.

Computer Graphics CS 543 Lecture 12 (Part 1) Curves. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

CSE 167: Lecture 13: Bézier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011

We can display an object on a monitor screen in three different computer-model forms: Wireframe model Surface Model Solid model

Geometric Modelling & Curves

CHAPTER 1 Splines and B-splines an Introduction

(Refer Slide Time: 1:42)

Figure 2.1: Center of mass of four points.

How To Use Design Mentor

Curves and Surfaces. Goals. How do we draw surfaces? How do we specify a surface? How do we approximate a surface?

Essential Mathematics for Computer Graphics fast

Corollary. (f є C n+1 [a,b]). Proof: This follows directly from the preceding theorem using the inequality

the points are called control points approximating curve

Planar Curve Intersection

Content. Chapter 4 Functions Basic concepts on real functions 62. Credits 11

BEZIER CURVES AND SURFACES

Computer Animation: Art, Science and Criticism

A Mathematica Package for CAGD and Computer Graphics

Numerical algorithms for curve approximation and novel user oriented interactive tools

A matrix method for degree-raising of B-spline curves *

Finite Element Formulation for Plates - Handout 3 -

A Geometric Characterization of Parametric Cubic Curves

B4 Computational Geometry

B2.53-R3: COMPUTER GRAPHICS. NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions.

How To Understand And Solve Algebraic Equations

VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur

Degree Reduction of Interval SB Curves

EECS 556 Image Processing W 09. Interpolation. Interpolation techniques B splines

Precalculus REVERSE CORRELATION. Content Expectations for. Precalculus. Michigan CONTENT EXPECTATIONS FOR PRECALCULUS CHAPTER/LESSON TITLES

Linear Programming Problems

DATA ANALYSIS II. Matrix Algorithms

Duality in General Programs. Ryan Tibshirani Convex Optimization /36-725

Kinematical Animation

GAME ENGINE DESIGN. A Practical Approach to Real-Time Computer Graphics. ahhb. DAVID H. EBERLY Geometrie Tools, Inc.

NURBS Drawing Week 5, Lecture 10

Copyrighted Material. Chapter 1 DEGREE OF A CURVE

Math 241, Exam 1 Information.

8. Linear least-squares

Prentice Hall Mathematics: Algebra Correlated to: Utah Core Curriculum for Math, Intermediate Algebra (Secondary)

A QUICK GUIDE TO THE FORMULAS OF MULTIVARIABLE CALCULUS

NURBS Drawing Week 5, Lecture 10

PATTERN RECOGNITION AND MACHINE LEARNING CHAPTER 4: LINEAR MODELS FOR CLASSIFICATION

3. Interpolation. Closing the Gaps of Discretization... Beyond Polynomials

Application of Design of Experiments to an Automated Trading System

Mean value theorem, Taylors Theorem, Maxima and Minima.

The Essentials of CAGD

Algorithms for Real-Time Tool Path Generation

Curves and Surfaces for Computer Graphics

South Carolina College- and Career-Ready (SCCCR) Pre-Calculus

Estimating the Average Value of a Function

How To Draw A 3D Virtual World In 3D Space (Computer Graphics)

BookTOC.txt. 1. Functions, Graphs, and Models. Algebra Toolbox. Sets. The Real Numbers. Inequalities and Intervals on the Real Number Line

Nonlinear Programming Methods.S2 Quadratic Programming

2.2 Creaseness operator

Introduction to Computer Graphics Marie-Paule Cani & Estelle Duveau

Chapter 13. Curves and Surfaces

AN INTRODUCTION TO NUMERICAL METHODS AND ANALYSIS

1. The forward curve

Math Assignment 6

From Scattered Samples to Smooth Surfaces

3. Linear Programming and Polyhedral Combinatorics

Increasing for all. Convex for all. ( ) Increasing for all (remember that the log function is only defined for ). ( ) Concave for all.

Seminar. Path planning using Voronoi diagrams and B-Splines. Stefano Martina

Mathematics Course 111: Algebra I Part IV: Vector Spaces

Dhiren Bhatia Carnegie Mellon University

COMP175: Computer Graphics. Lecture 1 Introduction and Display Technologies

Georgia Department of Education Kathy Cox, State Superintendent of Schools 7/19/2005 All Rights Reserved 1

Derive 5: The Easiest... Just Got Better!

Geography 4203 / GIS Modeling. Class (Block) 9: Variogram & Kriging

Turtle Geometry in Computer Graphics and Computer Aided Design

Analyzing Functions Intervals of Increase & Decrease Lesson 76

Selective Degree Elevation for Multi-Sided Bézier Patches

Simplex method summary

Simple Predictive Analytics Curtis Seare

Investigating Area Under a Curve

Computer Aided Systems

Fitting Subject-specific Curves to Grouped Longitudinal Data

Scientific Data Visualization with Shape Preserving C 1 Rational Cubic Interpolation

MATH 52: MATLAB HOMEWORK 2

CONCEPT-II. Overview of demo examples

COMPUTER GRAPHICS Computer Graphics

Linearly Independent Sets and Linearly Dependent Sets

MA 323 Geometric Modelling Course Notes: Day 02 Model Construction Problem

3D Tranformations. CS 4620 Lecture 6. Cornell CS4620 Fall 2013 Lecture Steve Marschner (with previous instructors James/Bala)

Piecewise Cubic Splines

Computer Animation. Lecture 2. Basics of Character Animation

NURBS with Extraordinary Points: High-degree, Non-uniform, Rational Subdivision Schemes

Algebra Unpacked Content For the new Common Core standards that will be effective in all North Carolina schools in the school year.

Nonlinear Iterative Partial Least Squares Method

1 Review of Least Squares Solutions to Overdetermined Systems

Mathematics Online Instructional Materials Correlation to the 2009 Algebra I Standards of Learning and Curriculum Framework

Largest Fixed-Aspect, Axis-Aligned Rectangle

Getting started with qplot

With the Tan function, you can calculate the angle of a triangle with one corner of 90 degrees, when the smallest sides of the triangle are given:

Constrained curve and surface fitting

Computer Aided Design (CAD)

How To Write An Isgeometric Finite Element Analysis

How to Create a Data Table in Excel 2010

Transcription:

Modeling Curves and Surfaces Graphics I Modeling for Computer Graphics!? 1

How can we generate this kind of objects? Umm!? Mathematical Modeling! S Do not worry too much about your difficulties in mathematics, I can assure you that mine are still greater. 2

Our modeling plan Parametric curves o Bezier o B-Spines (subdivision methods) How to extend curves to the surfaces, images, volumetric data sets Parametric versus implicit modeling Simple example: Circle o parametric t Q x(t) y(t) Q 3

Parametric versus implicit modeling Polynomial curves Polynomials are fundamental mathematical objects Easy and efficient to compute standard representation Polynomial curves of degree one, two and three where 4

User input for a polynomial curve Formula!!! No way Giving 2D(or 3D) points as Pi a good idea Pi : point => arbitrary combination of them is not possible. Why? Affine combination It is not possible to satisfy this condition by this set of polynomials Bernstein basis functions Terms in the expansion of: Second degree polynomials Third degree polynomials Resulting curves 5

Bezier Models Bezier curve properties Decasteljau algorithm Subdivision method Flaws of Bezier modeling Graphics I Bezier Model P.Bezier, 1960, Unisurf in Renault automobile designing. Mathematical definition Q(u) Modeling Point in or Old CAD and graphics software curve Postscript METAFONT 6

Bezier Curve Definition u is the parameter Berenstein polynomial of order d :Control points ( inputs) Bezier Curve Details Bezier curve of order 1 Bezier curve of order 3 Bezier curve of order 2 7

Cubic Bezier Curve properties 1. is a polynomial curve with the domain [0,1] 2. 3. 4. 5. Properties of Non-negative polynomial of order d 8

Convex Hull What is the Convex Hull? Given a set of points (in ) The smallest convex polyhedral that includes all the points given Implementation (brute force) Input P[i], d //P[i]: control point, d : degree, u : parameter for u=0 to 1 step 0.01 for i=0 to d b = Berenstein( i, d, u ) q = q + b * P[i] end plot(q); end This program isn t efficient Redundant computations High number of control points High degree polynomial High degree polynomial Unstable computation 9

de Casteljau Algorithm Avoid direct evaluating of polynomials Geometric interpretation Consider a planer cubic at u 1 u column by column updating rule Pseudo Code Input P[j], d, u //P[j] : control point, d : degree, u : parameter //output will be Q(u) for i = 1 to d for j = 0 to d-i P[j] =(1-u)*P[j] + u*p[j+1] end end Output??? Why is this algorithm correct? 10

Some Observation on Cubic Case After one step of decasteljue algorithm for Obtaining 4 green points 4 purple points Where Small left Bezier curve: Small right Bezier curve: Original Bezier curve Divided and conquer method A discrete approach We start with 4 points We will obtain 8 new points 7 new points New points: New points are closer to the curve We can repeat for any 4 points in the new points sets And initial polyline is replaced by a finer polyline Subdivision method 11

Matrix form Unit summation of any row. Non negative elements. Banded structure. L0, L1, L2,L3, R1, R2 and R3 can be found from the decasteljau algorithm 12

Subdivision approach versus functional approach Bezier Curve Functional approach Subdivision Approach Weakness of Bezier curves High degree polynomial How can we increase the controlling on the curve without adding control points? Composite Bezier curve: join Bezier curve segments. Apply some constraints at the connection points. What are these constrains? o Positional Continuity = zero degree continuity o Same direction tangents = first degree continuity Any other weakness? 13

instability! B-spline Subdivisions Spline curves Chaikin Subdivision: quadratic B-spline Cubic B-spline subdivision Tensor product surfaces Graphics I 14