Attribution Non-Commercial (BY-NC)

35 views

Attribution Non-Commercial (BY-NC)

- JEE Main 2019 Mathematics January Attempt Shift - 1(12th January, 2019)
- SURFACE FITTING APPROACH FOR TENSILE MEMBRANES DESIGN
- Adaptive Refinement in Vibrational Analysis and Isogemetric Analysis
- Differential_Equations_-_Classic_Fifth
- CALCULUS : IMPORTANT REVIEW TOPICS
- Levamisole HCl Spectro
- Cml 2017 Marks Eh1a
- Space Is The Machine_Part4
- Manual Introductorio a Autocad 2000
- Life in Time and Space1-25
- Gemini Pattern Editor v.X9 - User Manual
- C4 notes
- test 1 f312 sec A
- 424_237650
- Tutorial Sheet 4_2019
- Tutorial Rev It
- Planning Smooth and Obstacle-Avoiding B-Spline Paths for Autonomous Mining Vehicles-TPp
- Geography of the Clinic-Spatial practices in South African PHC
- Graph Plotter - Graph Calculator - Graph Maker Software
- Qpaper Ar Sr Asc Modified

You are on page 1of 26

Stu Pomerantz

smp@psc.edu

http://www.psc.edu/~smp

December 8, 2004

a Mostmaterial is adapted from: OpenGL ARB, et. al, “The OpenGL Pro-

gramming Guide”, Third Ed., Reading: Addison-Wesley, 1999

1

2D Parametric Curves

x = x(u)

y = y(u)

Where u is the parameter that is free to vary. For example:

x = cos(θ)

y = sin(θ)

x and y will trace out a circle as 0 ≤ θ ≤ 2π .

222

2D Parametric Curves

223

2D Parametric Curves

glBegin(GL_LINES) ;

du = PI/32 ;

for( u = 0 ; u < 8*PI ; u += du) {

x = cos(u) ; y = sin(u) ; z = 0 ;

glVertex3f(x,y,z) ;

x = cos(u+du) ; y = sin(u+du) ; z = 0 ;

glVertex3f(x,y,z) ;

}

glEnd() ;

224

3D Parametric Curves

x = x(u)

y = y(u)

z = z(u)

Where u is the parameter that is free to vary. For example:

x = cos(θ)

y = sin(θ)

z=θ

x, y and z will trace out a circlular helix as 0 ≤ θ ≤ 2π .

225

3D Parametric Curves

226

3D Parametric Curves

glBegin(GL_LINES) ;

du = PI/32 ;

for( u = 0 ; u < 8*PI ; u += du) {

x = cos(u) ; y = sin(u) ; z = u ;

glVertex3f(x,y,z) ;

glVertex3f(x,y,z) ;

}

glEnd() ;

227

3D Parametric Surfaces

x = x(u, v)

y = y(u, v)

z = z(u, v)

Where u and v are the parameters that are free to vary. For

example:

x = cos(θ) sin(φ)

y = sin(θ) sin(φ)

z = cos(φ)

x, y and z will trace out a sphere as 0 ≤ θ ≤ 2π and 0 ≤ φ ≤ 2π .

228

3D Parametric Surfaces

229

Polynomial Parametric Curves

n

X

p~(u) = uk~c k

k=0

where

cxk

k

~c = cyk

czk

230

Polynomial Parametric Curves

For example if n = 3,

3

X

p~(u) = uk~c k

k=0

expands to:

cx3 cx2 cx1 cx0

3

2

+ u cy2 + u cy1 + cy0

p~(u) = u cy3

231

Polynomial Parametric Curves

Continuing,

cx3 cx2 cx1 cx0

3

2

p~(u) = u cy3 + u cy2 + u cy1 + cy0

cz3 cz2 cz1 cz0

expands to

p~(u) = y(u) = cy3 u3 + cy2 u2 + cy1 u + cy0

z(u) = cz3 u3 + cz2 u2 + cz1 u + cz0

232

Polynomial Parametric Surfaces

x(u, v) n X m

X i j

p~(u, v) =

y(u, v) =

~

c ij u v

i=0 j=0

z(u, v)

evaluate the formula and determine the value of p~

• u for curves, and u and v for surfaces have an infinite domain.

• Generally, though, only an interval of values for the domain of

u and v is desired.

• So, without lost of generality, restrict the range of u and v to

[0, 1].

233

Interpolation Revisited

Two points, p~0 and p~1 , can be linearly interpolated like this:

p~ = a p~0 + (1 − a) p~1

where a ∈ [0, 1]

In this context, interpolation is also called blending. The points are

mixed together by the a and 1 − a which are weights.

The points p~0 and p~1 can be thought of as control points since they

influence (constrain) the final interpolated value.

This is similar, but not identical to, OpenGL’s blending functions.

And, in this case the purpose is not to produce transparent

surfaces but rather to produce a new interpolated point.

234

Interpolation using Cubic Polynomials

3

X

p~(u) = uk~c k

k=0

determined.

Rewrite this equation...

235

Interpolation using Cubic Polynomials

m11 m12 m13 m14 g1x g1y g1z

m21 m22 m23 m24

¤ g g2y g2z

£ 3 2 2x

u u u 1 · ·

m31 m32 m33 m34 g3x g3y g3z

m41 m42 m43 m44 g4x g4y g4z

Or more briefly,

p~(u) = U · M · G

236

Interpolation using Cubic Polynomials

For example,

(u3 m12 + u2 m22 + um32 + m42 )g2x +

(u3 m13 + u2 m23 + um33 + m43 )g3x +

(u3 m14 + u2 m24 + um34 + m44 )g4x +

elements of G (geometry) matrix.

237

Interpolation using Cubic Polynomials

control points.

• Analogous to the 2 control points in the previous linear

interpolation example.

• The meaning of these 4 points is dependant on the basis matrix

M.

• The basis matrix M affects

– The continuity of the curve.

– Which and whether control points are interpolated.

238

The Hermite Basis

construction the Hermite basis matrix is as follows:

Given 4 control points: p~1 , p~2 , p~3 , p~4

• Constrain the curve so that it interpolates p~1 at u = 0 and p~4

at u = 1

• Let p~2 and p~3 be the tangent vectors for p~1 and p~4 respectively.

239

The Hermite Basis

Recall,

£ 3 2

¤

U= u u u1

so,

0

£ 2

¤

U = 3u 2u 1 0

p~1 = [0 0 0 1] (u = 0)

p~4 = [1 1 1 1] (u = 1)

p~2 = [0 0 1 0] (u0 = 0)

p~3 = [3 2 1 0] (u0 = 1)

240

The Hermite Basis

p~1 0 0 0 1

p~ 1 1 1 1

4

=

p~2 0 0 1 0

p~3 3 2 1 0

must be the inverse of this matrix.

241

The Hermite Basis

2 −2 1 1

−3 3 −2 −1

M =

0 0 1 0

1 0 0 0

So,

p1 + (−2u3 + 3u2 )~

p4 +

p~(u) =

(u3 − 2u2 + u)~

p3 + (u3 − u2 )~

p4

242

The Hermite Basis

243

Example Hermite Curves

244

Comparison of Curve Types

Hermite Bezier Non-Uniform B-Spline Catmull-Rom

A Y Y N Y

B Y N N Y

C C0 C0 C2 C1

A = Interpolates some control points

B = Interpolates all control points

C = Inherent Continuity

the joint point, the curve is called C n continuous.

245

Example NURBS Surface

246

- JEE Main 2019 Mathematics January Attempt Shift - 1(12th January, 2019)Uploaded byResonance Eduventures
- SURFACE FITTING APPROACH FOR TENSILE MEMBRANES DESIGNUploaded byrodriguez.gaytan
- Adaptive Refinement in Vibrational Analysis and Isogemetric AnalysisUploaded byAbhishek Kumar
- Differential_Equations_-_Classic_FifthUploaded byaabolton21
- CALCULUS : IMPORTANT REVIEW TOPICSUploaded byExamville.com
- Levamisole HCl SpectroUploaded bymufidah mawaddah
- Cml 2017 Marks Eh1aUploaded bynaz2you
- Space Is The Machine_Part4Uploaded byreza ruffini
- Manual Introductorio a Autocad 2000Uploaded by4gen_5
- Life in Time and Space1-25Uploaded byGreg Sexton
- Gemini Pattern Editor v.X9 - User ManualUploaded byvwu78917
- C4 notesUploaded byTahir
- test 1 f312 sec AUploaded byfadz_rosli
- Tutorial Sheet 4_2019Uploaded byJayanth Reddy
- Tutorial Rev ItUploaded byargilim
- Planning Smooth and Obstacle-Avoiding B-Spline Paths for Autonomous Mining Vehicles-TPpUploaded byinstreng
- 424_237650Uploaded byPartha Pratim Basumallick
- Geography of the Clinic-Spatial practices in South African PHCUploaded byvynbosjunkie
- Graph Plotter - Graph Calculator - Graph Maker SoftwareUploaded byGoldenKstar
- Qpaper Ar Sr Asc ModifiedUploaded byraina_nitk
- VolumesUploaded bynorrizal96
- AbstractUploaded byokarians
- Corrected Answers Key50 13.1.2013Uploaded byPriyaprasad Panda
- 131 PS2Uploaded byBilly Remulla
- 15) Lampiran 5-6 - Hasil Statistik Dan Dokumentasi (Hal 59-69)Uploaded bymuhammad ihsanuddin
- Neintitulat 1Uploaded byValeria Serioghina
- cap05Uploaded byhaulam lee
- 1998EuclidSolution.pdfUploaded bySahabudeen Salaeh
- Cad Experiment No3Uploaded byRon Julienne Rebugio
- Ball Animation Js xUploaded byNick

- System and method for generating particlesUploaded byAnthony J. Le Goff
- An Analysis of Reading Errors of Dyslexic ReadersUploaded byIam Adreamer
- Factor Structure of the Women’s Heptathlon: Applications of Traditional Factor Analysis and Structural Equation ModellingUploaded byJournal of Theories and Application The International Edition
- Comparison of hot spot stress evaluation methods for welded structures.pdfUploaded byhbsheen
- Super Ellipse Fitting for the Recovery and Classification of Mine-Like Shapes in Sidescan Sonar Images_2008.10. Super Ellipse JoEUploaded bywidgetdog
- Accurate Indirect OcclusionUploaded byredorav
- structure knowledgeUploaded byAzrul Syazwan
- Curriculum Guide Creo 1 0Uploaded bysonu thigle
- Assignment 3 Mini-PresentationUploaded bytwy113
- Workarounds for the Issue Where BICS Connection..Uploaded byabhilash
- SyllabusUploaded bytle_pinky
- Introduction to LaTeXUploaded byAleksandar Petrov
- cap1Uploaded byRolly Steven Cadillo Poma
- Software Demonstration Scripts TemplateUploaded byNaveen Velu
- Pshd Ahp FormUploaded byNadeem Afzal
- 146194405-Jay-Manual.pdfUploaded byGaetan Guerin
- Karma and ReincarnationUploaded byNityaNiranjan Pedro
- The Impact of Digital Technology on Young PeopleUploaded byMax Levkov
- CPPD-LEAD09-003 PO1SLC Phase Two Student HandoutsUploaded byAvery Walters
- Curriculum Vitae KourteliUploaded byKyriaki
- SSL on Tomcat With BOE 3.1Uploaded byJayanth Kumar Nataraja
- Multiparty Access Control for Online SocialUploaded byKripaliniBezbaruah
- Environmental-Engineering-1.pdfUploaded byprashmce
- BACA - Windows 8.1 AIO 7in1 x86 Sep10-2013Uploaded byPengeran Cinta
- Recovery and Recrystallization Kinetics in AA1050 and AA3003 Aluminium AlloysUploaded bydavid9060
- Typologie du changement d’Andrew Van de Ven et Marshall Scott Poole.pdfUploaded bySirine Mahdi
- 201412081131-NABL-122-07-doc.pdfUploaded bymahesh
- Evolutionary Agents in BeetlesUploaded byCarlos Carreiro
- Introduction to ComputersUploaded byAbhijit Pathak
- Ang Dob Osbourne John Look Back in Anger 07 Summary CharactersUploaded byArif Ansari