arxiv:cs/ v1 [cs.gr] 22 Mar 2005

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

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

BEZIER CURVES AND SURFACES

the points are called control points approximating curve

Figure 2.1: Center of mass of four points.

Geometric Modelling & Curves

JUST THE MATHS UNIT NUMBER 8.5. VECTORS 5 (Vector equations of straight lines) A.J.Hobson

FURTHER VECTORS (MEI)

Section 13.5 Equations of Lines and Planes

(Refer Slide Time: 1:42)

Copyrighted Material. Chapter 1 DEGREE OF A CURVE

Jim Lambers MAT 169 Fall Semester Lecture 25 Notes

CHAPTER 1 Splines and B-splines an Introduction

Piecewise Cubic Splines

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

Math 241, Exam 1 Information.

(a) We have x = 3 + 2t, y = 2 t, z = 6 so solving for t we get the symmetric equations. x 3 2. = 2 y, z = 6. t 2 2t + 1 = 0,

Review of Fundamental Mathematics

H.Calculating Normal Vectors

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

A vector is a directed line segment used to represent a vector quantity.

Equations Involving Lines and Planes Standard equations for lines in space

39 Symmetry of Plane Figures

Mathematics Review for MS Finance Students

Essential Mathematics for Computer Graphics fast

Exam 1 Sample Question SOLUTIONS. y = 2x

This unit will lay the groundwork for later units where the students will extend this knowledge to quadratic and exponential functions.

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

6.1 Add & Subtract Polynomial Expression & Functions

What is Linear Programming?

Thnkwell s Homeschool Precalculus Course Lesson Plan: 36 weeks

The Point-Slope Form

Contents. 2 Lines and Circles Cartesian Coordinates Distance and Midpoint Formulas Lines Circles...

Planar Curve Intersection

Math 241 Lines and Planes (Solutions) x = 3 3t. z = 1 t. x = 5 + t. z = 7 + 3t

2.2 Creaseness operator

Review Sheet for Test 1

Copyright 2011 Casa Software Ltd. Centre of Mass

Example SECTION X-AXIS - the horizontal number line. Y-AXIS - the vertical number line ORIGIN - the point where the x-axis and y-axis cross

Systems of Linear Equations

1.5 Equations of Lines and Planes in 3-D

13.4 THE CROSS PRODUCT

EQUATIONS and INEQUALITIES

a 11 x 1 + a 12 x a 1n x n = b 1 a 21 x 1 + a 22 x a 2n x n = b 2.

A QUICK GUIDE TO THE FORMULAS OF MULTIVARIABLE CALCULUS

Name Class. Date Section. Test Form A Chapter 11. Chapter 11 Test Bank 155

The University of the State of New York REGENTS HIGH SCHOOL EXAMINATION GEOMETRY. Thursday, January 26, :15 a.m. to 12:15 p.m.

12.5 Equations of Lines and Planes

Section 9.5: Equations of Lines and Planes

CIRCLE COORDINATE GEOMETRY

Section 1.4. Lines, Planes, and Hyperplanes. The Calculus of Functions of Several Variables

The Math Circle, Spring 2004

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

1 if 1 x 0 1 if 0 x 1

Algebra and Geometry Review (61 topics, no due date)

Arrangements And Duality

Lecture 9: Lines. m = y 2 y 1 x 2 x 1

Chapter 2. Derivation of the Equations of Open Channel Flow. 2.1 General Considerations

discuss how to describe points, lines and planes in 3 space.

Determine whether the following lines intersect, are parallel, or skew. L 1 : x = 6t y = 1 + 9t z = 3t. x = 1 + 2s y = 4 3s z = s

Section 2.4: Equations of Lines and Planes

Equation of a Line. Chapter H2. The Gradient of a Line. m AB = Exercise H2 1

Section 1.1. Introduction to R n

Module1. x y 800.

L 2 : x = s + 1, y = s, z = 4s Suppose that C has coordinates (x, y, z). Then from the vector equality AC = BD, one has

( 1) = 9 = 3 We would like to make the length 6. The only vectors in the same direction as v are those

Selected practice exam solutions (part 5, item 2) (MAT 360)

Lecture 2: August 29. Linear Programming (part I)

Grade 7 & 8 Math Circles Circles, Circles, Circles March 19/20, 2013

9 Multiplication of Vectors: The Scalar or Dot Product

Rolle s Theorem. q( x) = 1

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

A Geometric Characterization of Parametric Cubic Curves

Higher Education Math Placement

Reflection and Refraction

BX in ( u, v) basis in two ways. On the one hand, AN = u+

1 Review of Least Squares Solutions to Overdetermined Systems

Mathematics Pre-Test Sample Questions A. { 11, 7} B. { 7,0,7} C. { 7, 7} D. { 11, 11}

The University of the State of New York REGENTS HIGH SCHOOL EXAMINATION GEOMETRY. Thursday, August 13, :30 to 11:30 a.m., only.

Special Situations in the Simplex Algorithm

9.4. The Scalar Product. Introduction. Prerequisites. Learning Style. Learning Outcomes

G r a d e 1 0 I n t r o d u c t i o n t o A p p l i e d a n d P r e - C a l c u l u s M a t h e m a t i c s ( 2 0 S ) Final Practice Exam

Datum > Curve KIM,ME,NIU

THEORETICAL MECHANICS

Equations of Lines and Planes

Geometric description of the cross product of the vectors u and v. The cross product of two vectors is a vector! u x v is perpendicular to u and v

The University of the State of New York REGENTS HIGH SCHOOL EXAMINATION GEOMETRY. Thursday, August 13, :30 to 11:30 a.m., only.

Lecture 2. Marginal Functions, Average Functions, Elasticity, the Marginal Principle, and Constrained Optimization

Definition: A vector is a directed line segment that has and. Each vector has an initial point and a terminal point.

1. Equations for lines on the plane and planes in the space.

LINES AND PLANES CHRIS JOHNSON

Co-ordinate Geometry THE EQUATION OF STRAIGHT LINES

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

LINEAR EQUATIONS IN TWO VARIABLES

CHAPTER FIVE. 5. Equations of Lines in R 3

Scalar Valued Functions of Several Variables; the Gradient Vector

New York State Student Learning Objective: Regents Geometry

Largest Fixed-Aspect, Axis-Aligned Rectangle

Appendix 3 IB Diploma Programme Course Outlines

Systems of Linear Equations

Transcription:

arxiv:cs/0503054v1 [cs.gr] 22 Mar 2005 ANALYTIC DEFINITION OF CURVES AND SURFACES BY PARABOLIC BLENDING by A.W. Overhauser Mathematical and Theoretical Sciences Department Scientific Laboratory, Ford Motor Company, Dearborn, Michigan Technical Report No: SL 68-40, May 8, 1968 SUMMARY A procedure for interpolating between specified points of a curve or surface is described. The method guarantees slope continuity at all junctions. A surface panel divided into p q contiguous patches is completely specified by the coordinates of (p + 1) (q + 1) points. Each individual patch, however, depends parametrically on the coordinates of 16 points, allowing shape flexibility and global conformity. APPROVED: J.E. Goldman, Director Scientific Laboratory 1

I. Interpolation Between points on a Space Curve We assume that a space curve is approximately defined by a sequence of points { A, B, C,...}, each of which are vectors, i.e., A = Ax, A y, A z in a Cartesian reference frame. We propose an interpolation scheme that defines the curve between each pair of adjacent points so that the curve is as smooth as possible. Consider four adjacent points: D,E,F,G. Figure 1 The distance t along the chord between E and F defines a scalar variable that we use to parametrize a curve c(t) between E and F. c(t) will be a blend of two parabolas. The three points D, E, F, define a parabola p(r) as follows. Let r be the distance along the chord between D and F. Let u be the distance perpendicular to r in the plane defined by D, E, F. The parabola, u = αr(d r), (1) has an axis perpendicular to the line along r. d = distance between D and F. We choose α so that this parabola passes through E. Then p(r) can be taken to be the parabola, Eq.(1). 2

Similarly, the three points E, F, G, define a parabola q(s) as follows. Let s be the distance along the chord between E and G. Let v be the distance perpendicular to s in the plane defined by E, F, G. The parabola, v = βs(e s), (2) has an axis perpendicular to the line along s. e distance between E and G. We choose β so that this parabola passes through F. Then q(s) can be taken to be the parabola, Eq.(2). If E, F, and G happen to be collinear, Eq.(2) will be v 0, a straight line. We now define c(t) as a blend of p(r) and q(s) as follows: c(t) = [1 (t/t o )] p(r) + (t/t o ) q)(s). (3) t o distance between E and F. Consequently, the two blending functions [the coefficients of p(r) and q(s)] vary linearly between 0 and 1. Eq.(3) is not completely specified until we define a relation between t and r and between t and s. This can be done only by dropping perpendiculars to the lines along r and s respectively; so r = r(t) and s = s(t) are defined by this geometric operation. In like manner we construct a curve c i (t i ) between each adjacent pair of points. It is easy to prove that where two c i (t i ) connect, their slopes are equal; so the entire curve will be continuous and smooth. To see this, consider Eq.(3) rewritten as follows. The slope at point E is c(t) = p(t) + (t/t o )[ q(t) p(t)]. (4) (d c/dt) E = (d p/dt) E + (t/t o ) E [d q/dt d p/dt] E + (1/t o )( q p) E. (5) 3

The second term on the right hand side is zero because t = 0 at E; and the third term on the right hand side is zero because q = p at E. Consequently, (d c/dt) E = (d p/dt) E. (6) The slope of c(t) at E equals the slope of the parabola p(r), which passes through D, E, and F. This same parabola determines the slope of c at E for the curve between D and E by an identical argument. Consequently slope continuity is assured. Blending of two parabolas is possible only if the interval is an interior one. If the curve starts at point A, Figure 2 then interpolation between A and B should be by the single parabola, defined as above, through A, B, and C. Accordingly, in order to specify carefully the shape of the curve near its endpoint, the distance between A and B should be smaller than that for interior intervals. There is no requirement that the points be equally, or nearly equally spaced. Obviously point density should be higher where the curvature is higher. If an interpolated segment of the curve does not behave according to some a priori intent, an extra point can be inserted to provide the required constraint. Aside from endpoints discussed above, it should not be necessary to 4

specify for special treatment interior points at inflections or cusps, provided the latter are not intended to be infinitely sharp. Precision is reproducing such features can be assured merely by specifying extra points sufficiently near to these characteristic features. The curve c(t), Eq.(3) or (4), is of cubic order in the Cartesian coordinates. Consequently it can adequately represent an inflection that should occur within an interval. It should be apparent that the cubic function appropriate to the interval EF does not pass through points D and G. (This is an important difference in comparison to simple fit by cubic polynomials.) The manner of construction (as a blend of two parabolas) guarantees that spurious wiggles will not be introduced, as frequently happens when simple cubes are forced to pass through four points of a curve. II. Interpolation Between Points on a Space Surface We assume that a space surface is defined by a net of points A ij, such as intersections of lines in the figure below. Figure 3 5

Connecting lines between adjacent points of the net can be constructed by the blending algorithm described in Sec. I. Clearly a good surface interpolation for the patch EFGH must take into account the global shape implied by the adjacent points, L, M, N,...V, W. Consider the patch EFGH. A set of coordinates to which points on the patch are related can be defined, say x and y. x = constant (between 0 and 1) defines a space curve through the four points a,b,c,d which, in the notation of Sec. I, are points t = xt o of curves MN, EF, GH, VU respectively. The line l, between b and c, is then defined by the blending algorithm. Similarly, a line m is defined by y = constant (between 0 and 1). Surface point z(x, y) can be taken to be z(x, y) = l(y), (7) z(x, y) = m(x). (8) These two surfaces will differ slightly since l and m will not in general intersect. They do coincide, however, on all network lines. If computational labor is not a factor, one may take the average of (7) and (8): z(x, y) = 1 2 l(y) + 1 m(x). (9) 2 An advantage of these surface interpolation schemes is that all surface slopes will be continuous at boundaries between patches. The surface shape of each patch will depend, as it should, on the behavior of the surface surrounding it. Parabolic blending along l, m lines is possible only for interior patches. Interpolation for patches at an edge will employ a single parabola for l or m, like the end interval of Sec. I. Corner patches will necessitate single parabolas for both l and m lines. Accordingly good edge definition requires a narrow 6

spacing for the network lines adjacent to edges of the surface, as shown in the figure. An entire surface panel consisting of pq patches is specified by the coordinates of (p + 1)(q + 1) points, slightly more than one point per patch on the average. The shape of a single (interior) patch, however, depends on 16 points. This signifies both flexibility and global relationship. The optimum arrangement of network points will naturally depend on the shape of the panel that is to be represented. If the panel has a ridge, for example, the network should be arranged so that a network line passes along the crest. Closely spaced network lines (approximately parallel to the crest) should also be included to provide adequate definition. III. Analysis In order to carry out the procedures described in the preceding sections it is necessary to have explicit formulas for the parabolic functions and coordinates. We need to this only for one case. Figure 4 J is the point along DF obtained by dropping a perpendicular from E. If J is D + x( F D), then: { E [ D + x( F D)]} ( F D) = 0. (10) 7

It follows that x = ( E D) ( F D)/d 2 (11) where d F D. The equation of a point p on the parabola p(r) is p(r) = D + (r/d)( F D) + αr(d r)( E J). (12) The coefficient α is determined by requiring p(xd) = E. The last term of (12) must satisfy, αxd(d xd)( E J) = E J. (13) So, α = 1/[d 2 x(1 x)]. (14) The equation of the parabola is now completely specified: Eq.(12) together with values for α and x, Eqs.(14) and (11). The only problem that remains is to find the relation between t and r. From the figure it follows that r = xd + t cosθ. (15) We have, cosθ = ( F E) ( F D)/dt o (16) where t o = F E. Consequently, Eq.(15) is specified completely, so Eq.(12) can be written as a function of t. In the alternative event that t is along the chord from D to E, so that t o = E D, we have instead of (15), r = t( E D) ( F D)/dt o. (17) 8

Figure 1

Figure 2

Figure 3

Figure 4