MA 323 Geometric Modelling Course Notes: Day 20 Curvature and G 2 Bezier splines

Similar documents
MA 323 Geometric Modelling Course Notes: Day 07 Parabolic Arcs

MA 323 Geometric Modelling Course Notes: Day 11 Barycentric Coordinates and de Casteljau s algorithm

MA 323 Geometric Modelling Course Notes: Day 12 de Casteljau s Algorithm and Subdivision

Sample Exam 1 KEY NAME: 1. CS 557 Sample Exam 1 KEY. These are some sample problems taken from exams in previous years. roughly ten questions.

Cubic Splines; Bézier Curves

Introduction to Vector Functions

Unit Speed Curves. Recall that a curve Α is said to be a unit speed curve if

Curves. Hakan Bilen University of Edinburgh. Computer Graphics Fall Some slides are courtesy of Steve Marschner and Taku Komura

Planar interpolation with a pair of rational spirals T. N. T. Goodman 1 and D. S. Meek 2

Spiral spline interpolation to a planar spiral

We have seen that for a function the partial derivatives whenever they exist, play an important role. This motivates the following definition.

CONTROL POLYGONS FOR CUBIC CURVES

MATH 2083 FINAL EXAM REVIEW The final exam will be on Wednesday, May 4 from 10:00am-12:00pm.

Introduction to Vector Functions

CURRENT MATERIAL: Vector Calculus.

31.1.1Partial derivatives

Introduction to Computer Graphics. Modeling (1) April 13, 2017 Kenshi Takayama

Arsène Pérard-Gayot (Slides by Piotr Danilewski)

HOMEWORK 2 SOLUTIONS

Limits and the derivative function. Limits and the derivative function

Grade 12 (MCV4UE) AP Calculus Page 1 of 5 Derivative of a Function & Differentiability

Lecture 23: Hermite and Bezier Curves

Bernstein polynomials of degree N are defined by

Math & 8.7 Circle Properties 8.6 #1 AND #2 TANGENTS AND CHORDS

Fitting a Natural Spline to Samples of the Form (t, f(t))

Lecture 20: Bezier Curves & Splines

The Detective s Hat Function

Module 16 : Line Integrals, Conservative fields Green's Theorem and applications. Lecture 48 : Green's Theorem [Section 48.

Can a Bicycle Create a Unicycle Track?

SPLINE INTERPOLATION

Plane Curves and Parametric Equations

(1) Recap of Differential Calculus and Integral Calculus (2) Preview of Calculus in three dimensional space (3) Tools for Calculus 3

18.02 Multivariable Calculus Fall 2007

King Fahd University of Petroleum and Minerals Prep-Year Math Program Math (001) - Term 181 Recitation (1.1)

Keyframing. CS 448D: Character Animation Prof. Vladlen Koltun Stanford University

( ) = 0. ( ) does not exist. 4.1 Maximum and Minimum Values Assigned videos: , , , DEFINITION Critical number

CMSC427 Parametric curves: Hermite, Catmull-Rom, Bezier

Quick Review for BC Calculus

A Relationship Between Minimum Bending Energy and Degree Elevation for Bézier Curves

MAT300/500 Programming Project Spring 2019

Name: ID: Math 233 Exam 1. Page 1

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

Approximation of Circular Arcs by Parametric Polynomials

Arc Length. Philippe B. Laval. Today KSU. Philippe B. Laval (KSU) Arc Length Today 1 / 12

3 = arccos. A a and b are parallel, B a and b are perpendicular, C a and b are normalized, or D this is always true.

274 Microlocal Geometry, Lecture 2. David Nadler Notes by Qiaochu Yuan

13.3 Arc Length and Curvature

Hyperbolic Transformations

ON THE TOTAL CURVATURE OF A KNOTTED SPACE CURVE.

4 The Trigonometric Functions

Section Arclength and Curvature. (1) Arclength, (2) Parameterizing Curves by Arclength, (3) Curvature, (4) Osculating and Normal Planes.

SCIENCE PROGRAM CALCULUS III

SOLUTIONS TO SECOND PRACTICE EXAM Math 21a, Spring 2003

Upon successful completion of MATH 220, the student will be able to:

Computing the Hausdorff Distance between Two B-Spline Curves. Zachi Shtain

LECTURE 15: COMPLETENESS AND CONVEXITY

Tangent and Normal Vectors

APPM 2350, Summer 2018: Exam 1 June 15, 2018

A crash course the geometry of hyperbolic surfaces

Interpolation and polynomial approximation Interpolation

November 20, Interpolation, Extrapolation & Polynomial Approximation

Readings for Unit I from Ryan (Topics from linear algebra)

Motion in Space Parametric Equations of a Curve

1 Piecewise Cubic Interpolation

22m:033 Notes: 6.1 Inner Product, Length and Orthogonality

Geometric approximation of curves and singularities of secant maps Ghosh, Sunayana

1 Euclidean geometry. 1.1 The metric on R n

CURRENT MATERIAL: Vector Calculus.

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

V11. Line Integrals in Space

SCIENCE PROGRAM CALCULUS III

Calculus and Parametric Equations

AB.Q103.NOTES: Chapter 2.4, 3.1, 3.2 LESSON 1. Discovering the derivative at x = a: Slopes of secants and tangents to a curve

The Minimal Element Theorem

II. Unit Speed Curves

The Mean Value Theorem and its Applications

Packing, Curvature, and Tangling

There is a function, the arc length function s(t) defined by s(t) = It follows that r(t) = p ( s(t) )

Title Intuition Formalities Examples 3-D. Curvature. Nicholas Dibble-Kahn. University of California, Santa Barbara. May 19, 2014

43.1 Vector Fields and their properties

Vector Calculus, Maths II

Bézier Curves and Splines

8. THE FARY-MILNOR THEOREM

What is a Space Curve?

Riemannian geometry of surfaces

Practice Problems for the Final Exam

Empirical Models Interpolation Polynomial Models

example consider flow of water in a pipe. At each point in the pipe, the water molecule has a velocity

MTH301 Calculus II Glossary For Final Term Exam Preparation

Geometric Lagrange Interpolation by Planar Cubic Pythagorean-hodograph Curves

APPM 2350 Section Exam points Wednesday September 26, 6:00pm 7:30pm, 2018

G-code and PH curves in CNC Manufacturing

MATH 150 Pre-Calculus

Cubic Splines. Antony Jameson. Department of Aeronautics and Astronautics, Stanford University, Stanford, California, 94305

Mathematics 5 Worksheet 14 The Horizon

Day 4: Motion Along a Curve Vectors

The Distance Formula & The Midpoint Formula

HIGHER ORDER RIGIDITY - WHAT IS THE PROPER DEFINITION?

ENGI 4430 Line Integrals; Green s Theorem Page 8.01

Module 5 : Linear and Quadratic Approximations, Error Estimates, Taylor's Theorem, Newton and Picard Methods

Transcription:

MA 323 Geometric Modelling Course Notes: Day 20 Curvature and G 2 Bezier splines David L. Finn Yesterday, we introduced the notion of curvature and how it plays a role formally in the description of curves, as a geometric second derivative. Today, we want to continue this discussion and construct curves that have second order continuity. In this manner, we derive the curvature of a cubic Bezier curve at the endpoints only. It is worth noting that since cubic curves are smooth curves, the curvature (when defined, as it is possible to construct a cusp with a cubic curve) is continuously varying. In the construction of a G 2 spline, it is therefore only necessary to match the curvatures are the endpoints. 20.1 G 2 Bezier splines A G 2 spline is a piecewise cubic Bezier curve which is G 1 and the derivative is G 1. They are much more difficult to describe analytically, through control points and the functional representation. Basically, we want to reparameterize the curve with respect to the arclength parameter and show the curve is C 2 respect to the arc-length parameter, which means the curvatures and the unit tangent vectors must be equal at the joint point. Let p 1 0, p 1 1, p 1 2, p 1 3 and p 2 0, p 2 1, p 2 2, p 2 3 be the control point of two cubic Bezier curves. We want a continuous curve so p 1 3 = p 2 0. We want the curve G 1, so p 1 3 = p 2 0 lies on the segment p 1 2p 2 1. Further, let d be the intersection of the lines p 1 1p 1 2 and p 2 1p 2 2, a C 2 spline control point controlling the location of the joint point. To derive the conditions for G 2, let r = ratio(p 1 1, p 1 2, d), r + = ratio(d, p 2 1, p 2 2), and r = ratio(p 1 2, p 1 3, p 2 1). We show below that the curvatures at p 1 3 = p 2 0 are given by κ = 4 area(p 1 1, p 1 2, p 1 3) 3 p 1 3 and κ + = 4 area(p 2 0, p 2 1, p 2 2) p1 2 3 3 p 2 1, p2 0 3 from the control points p 1 0, p 1 1, p 1 2, p 1 3 and p 2 0, p 2 1, p 2 2, p 2 3 respectively. Using the below figure, if the curvatures agree then area(p 1 1, p 1 2, p 1 3) area(p 1 2, p1 3, d) = r3, which yields the G 2 condition area(p 1 1, p 1 2, p 1 3) area(d, p 2 0, p2 1 ) = r, area(p 2 0, p 2 1, p 2 2) area(p 1 2, p1 3, d) = r +, area(d, p 2 0, p 1 3) area(p 2 0, p2 1, p2 2 ) = r, r 2 = r r +.

# % ' # 20-2 For a G 2 spline, we can place the control points p 1 2 and p 2 1 anywhere, and then the joint point p 1 3 = p 2 0 is determined by the G 2 condition. 20.2 Curvature Calculations We want to discuss the calculations and the derivations involved with the establishing the conditions for a G 2 spline. First, we want to consider the curvature of a cubic Bezier curve at one of the endpoints. This can be determined geometrically from the control points. Recall from calculus, the curvature of a curvature is given by the normal component of acceleration as κ = a N v 2 where a is the acceleration d 2 c/dt 2, N is the unit normal vector, and v is the velocity vector. Our definition of curvature of a plane curve agrees with this definition except that we have a different definition of a normal vector vector of a plane curve. $ $ κ! " &(' '' ) *+ ), -.+/ -0 Figure 1: Curvature calculation for a cubic Bezier curve at p 0 For a cubic Bezier curve with control points p 0, p 1, p 2, p 3, the acceleration vector at p 0 is 6 2 0p and the velocity vector is 3 1 0p, where 2 0p = (p 2 p 1 ) (p 1 p 0 ) and 1 0p = p 1 p 0.

20-3 We can not write the unit normal vector N at p 0 in terms of the control points, but that is unneeded. It is important that the dotproduct of 2 0p with N is equal to the dotproduct of p 2 p 1 with N, because p 1 p 0 is parallel to T and therefore orthogonal to N. Thus, the area of the triangle with vertices p 0, p 1, p 2 is equal to area(p 0 p 1 p 2 ) = 1 2 (p 2 p 1 ) N p 1 p 0 as (p 2 p 1 ) N is the height of the triangle p 0 p 1 p 2. We thus have that and the curvature at p 0 is then a N = 6 2 0p N = 6(p 2 p 1 ) N = 12area(p 0p 1 p 2 ) p 1 p 0 κ = 12area(p 0p 1 p 2 ) 9 p 1 p 0 3 = 4 area(p 0 p 1 p 2 ) 3 p 1 p 0 3 since v = 3(p 1 p 0 ). Likewise the curvature at p 3 is given by κ = 4 3 p 3 p 2 3 which yields the two curvature formula that gave above. We note that these formula can only be used at the endpoints, since they were derived purely from the special form of the velocity and acceleration vectors at the endpoints. 20.3 Control Points for G 2 Splines In creating a G 2 spline using two segments, we give five control points d 2, d 1, d 0, d 1 and d 2, and define a C 0 cubic Bezier spline, similar to the construction of a C 2 Bezier spline. The control points b 0, b 1, b 2, b 3 (the joint point), b 4, b 5 and b 6 of the C 0 Bezier spline are given by b 0 = d 2, b 1 = d 1, b 5 = d 1, b 6 = d 2 and then b 2 = (1 t ) d 1 + t d 0 b 4 = (1 t + ) d 0 + t + d 1 where r = t /(1 t ) is a control specifying the location of b 2 on the line d 1 d 0 and r + = t + /(1 t + ) is a control specifying the location of b 4 on the line d 0 d 1. The quantities r and r + are the ratios of ratio(d 1, b 2, d 0 ) and ratio(d 0, b 4, d 1 ); the ratio of three collinear points with the middle point B between the endpoints A and C is defined by ratio(a, B, C) = CB / AB. The joint point b 3 is then given by where r = t/(1 t) must satisfy r 2 = r r +. b 3 = (1 t) b 2 + t b 4 To show that r 2 = r r +, we begin by noting that for d 2, d 1, d 0, d 1, d 2 to define a G 2 spline we must have p 3 p 2 3 = area(p 3p 4 p 5 ) p 4 p 3 3, or ( ) area(p 3 p 4 p 5 ) = p 3 p 2 3 p 4 p 3 3.

! 20-4!"#!$% & '() +*,* -. / 01/ 2 2! 23!$% & '() +*0,* - 2. ) 2 54/ 6) #,/0!!)$% & '#,*54-*0,. / 1!"%! 2 Figure 2: Determining the control points by ratios The ratio of the areas in ( ) (the left-hand side of the equation) is given by (p 2 p 1 ) N p 3 p 2 (p 5 p 4 ) N p 4 p 3 but p 3 p 2 = t p 4 p 2 and p 4 p 3 = (1 t) p 4 p 2. Thus the ratio of areas is equal to r (p 2 p 1 ) N (p 5 p 4 ) N = r t (d 0 d 1 ) N 1 t + (d 0 d 1 ) N since p 2 p 1 = p 2 d 1 = t (d 0 d 1 ) and p 5 p 4 = (1 t + ) (d 1 d 0 ) To simplify further, we look at the triangle p 2 d 0 p 4, and note that (d 0 p 2 ) N = (d 0 p 4 ) N (height is equal). Therefore, since (d 0 p 2 ) = (1 t )(d 0 d 1 ) and d 0 p 4 = t + (d 0 d 1 ), we get and thus Therefore, the ratio of areas in ( ) is (d 0 p 2 ) N (d 0 p 4 ) N = (1 t ) (d 0 d 1 ) N t + (d 0 d 1 ) N, (d 0 d 1 ) N (d 0 d 1 ) N = t + 1 t. t t + r = rr r + 1 t + 1 t and the right-hand side of ( ) simplifies to r 3 which yields r 2 = r r +.

20-5 "$ % & ' () )! " # Figure 3: Determining the control points for G 2 Bezier spline Exercises 1. For the cubic Bezier curve with control points p 0 = [0, 0], p 1 = [1, 1], p 2 = [2, 1], p 3 = [3, 1], compute the curvature at p 0 and p 3 (a) Using calculus κ = (a N)/ v 2 where v is the first derivative and a is the second derivative of the curve. (b) Using the formula κ = 4 3 area(p 1p 2 p 3 )/ p 3 p 2 3 2. Complete the interactive exercises associated with the applet G 2 Bezier splines. 3. For a C 0 Bezier spline of two segments with a non-uniform knot sequence determine the conditions for the curve to be joined in a C 2 manner, and then determine the location of the C 2 Bezier spline control points d 2, d 1, d 0, d 1 and d 2. Do you believe that this is the same construction as a G 2 Bezier spline of two cubic curves.