Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that,...

77
Computer Graphics Shi-Min Hu Tsinghua University

Transcript of Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that,...

Page 1: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

Computer Graphics

Shi-Min Hu

Tsinghua University

Page 2: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

Bézier Curves and Surfaces

• Parametric curves and surface: Some

Concepts

• Bézier Cuvres: Concept and properties

• Bézier surfaces: Rectangular and

Triangular

• Conversion of Rectangular and Triangular

Bézier surfaces

Page 3: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

Parametric curves and surface

• In Graphics, we usually design a scene and

then generate realistic image by using

rendering equation.

• It’s necessary to introduce geometric

modeling for scene design.

• How to represent 3D shapes (models) in

computer?

Page 4: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

History of Geometric Modeling

• Surface Modeling :

– In 1962, Pierre Bézier, an engineer of French

Renault Car company, propose a new kind of

curve representation, and finally developed a

system UNISURF for car surface design in 1972.

Page 5: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Pierre Etienne Bezier was born on September 1, 1910 in

Paris. Son and grandson of engineers

• He entered the Ecole Superieure d'Electricite and earnt a

second degree in electrical engineering in 1931. In 1977,

46 years later, he received his DSc degree in mathematics

from the University of Paris.

• In 1933, aged 23, Bezier entered Renault and worked for

this company for 42 years.

• Bezier's academic career began in 1968 when he became

Professor of Production Engineering at the Conservatoire

National des Arts et Metiers. He held this position until

1979.

Page 6: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Solid Modeling :

– In1973, Ian Braid of Cambridge University

developed a solid modeling system for

designing engineering parts.

– Ian Braid presented in his dissertation

“Designing with volumes”, this work being

demonstrated with the BUILD-1 system.

Page 7: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.
Page 8: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

How to represent a curve?

• There are three major types of object

representation:

– Explicit representation: the explicit form of a

curve in 2D gives the value of one variable,

the dependent variable, in terms of the other,

the independent variable. In x, y space, we

may write

– For the line, we usually write

( )y f x

y mx h

Page 9: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

– Implicit representation: In two dimensions, an

implicit curve can be represented by the equation

– For the line

– For the circle

2 2 2 0x y r

( , ) 0f x y

0ax by c

Page 10: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

– Parametric form: The parametric form of a curve

expresses the value of each spatial variable for

points on the curve in terms of an independent

variable , the parameter.

– In 3D, we have three explicit functions

t

( )

( )

( )

x x t

y y t

z z t

Page 11: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

– One of the advantages of the parametric form is

that it is the same in two and three dimensions. In

the former case, we simply drop the equation for

z.

– A useful representation of the parametric form is

to visualize the locus of points

( )

being drawn as t varies.

( ) [ ( ), ( ), ( )]TP t x t y t z t

Page 12: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

– We can think of the derivative

As the velocity with which the curve is traced out

and points in direction tangent to the curve.

( )

( ) ( )

( )

dx t

dt

dP t dy t

dt dt

dz t

dt

Page 13: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

Parametric polynomial curves

• Parametric curves are not unique. A given curve or

surface can be represented in many ways, but we

shall find that parametric forms in which the

functions are polynomials in t.

• A polynomial parametric curve of degree 3 is of

form

• It was known as Ferguson curve, and was used for

airplane design in earlier in USA.

3 2( )P t at bt ct d

Page 14: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• But Ferguson curve is not straightforward,

even the coefficients a, b, c, d are given, it’s

still hard to imagine the shape of the curve.

Page 15: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

Bézier Cuvres: Concept and

properties

• Pierre Bézier proposed a method to represent

a curve in terms of connected vectors.

,

0

1 1,

1

( ) ( )

1, 0,

( ) ( ) (1 ) 1

( 1)!

n

i n i

i

i i ni n

i

V t f t A

i

f t t d t

i dt t

Page 16: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Curve can be designed interactively?

– Curve are generated according to the control

net (those connected vectors)

– We may change vectors to modify the curve

– See demo: curvesystem.exe

Page 17: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• However, such a definition is unintelligible

• 1972, Forrest published his famous paper in

Computer Aided Design journal,

– he pointed out that, Bézier curve can be defined

in terms of points with help of Bernstein

Polynomials.

– Liang Youdong, Chang Gengzhe, Liu Dingyuan

– P Bézier was passed away in 1999, CAGD

published a Special issue for him in 2001

Page 18: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

CAGD special issue

Page 19: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

Definition

• Given control points P0,P1,…Pn, Bezier curve

can be defined as:

Where B (t) is i-th Bernstein polynomial of

degree n

]1,0[),()( ,0

ttBPtP nii

n

i

),...1,0(

)1()!(!

!)1()(,

ni

ttini

nttCtB iniinii

nni

Page 20: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

Three Bezier curves

Degree two Degree three

Degree four

Page 21: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

Property of Bernstein polynomial

• Non-negative ( )

• End point

,

0 0,1( )

0 (0,1), 1,2, , 1;i n

tB t

t i n

otherswise

niB

otherswise

iB

ni

ni

0

)(1)1(

0

)0(1)0(

,

,

Page 22: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Unity

– Proof: According to Binomial

Theorem( ), we have

,

0

( ) 1 (0,1)n

i n

i

B t t

n

i

n

i

ninii

nni ttttCtB0 0

, 1])1[()1()(

Page 23: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Symmetry ( )

– Proof:

, ,(1 ) ( )i n n i nB t B t

)1()1(

)1()]1(1[)(

,

)(

,

tBttC

ttCtB

ni

inii

n

ininnin

nnin

Page 24: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Recursive ( )

– This means that Bernstein Polynomial of degree

n is a linear combination of two Bernstein

Polynomial of degree n-1.

),...,1,0(

),()()1()( 1,11,,

ni

ttBtBttB ninini

)()()1(

)1()1()1(

)1()()1()(

1,11,

)1()1(11

1

)1(

1

1

11,

ttBtBt

tttCttCt

ttCCttCtB

nini

inii

n

inii

n

inii

n

i

n

inii

nni

Page 25: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Derivation ( )

• Maximum

– has a unique local maximum on the

interval [0,1] at x = i/n

;,,1,0

)],()([)( 1,1,1,

ni

tBtBntB ninini

B ti n, ( )

Page 26: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• degree raising formula

)(1

1)()

11()(

)(1

1)(

)()1

1()()1(

1,11,,

1,1,

1,,

tBn

itB

n

itB

tBn

ittB

tBn

itBt

ninini

nini

nini

Page 27: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Integral

1

0,

1

1)(

ntB ni

Page 28: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

Property of Bezier curve

• End point properties

– Position of end point

• According to the end position’s property of

Bernstein polynomial, We have

• So the start point and end point of Bezier curve

coincide with start point and end point of the

control polygon.

0(0) , (1) ,nP P P P

Page 29: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

– Tangent Vector

• Since

• We have

• This implies the tangent vector of the curve at the

start and end points is the same with the direction

of the first and last edges of the control polygon

1

0

1,1,1

' )]()([)(n

i

ninii tBtBPntP

1 0 1'(0) ( ), '(1) ( )n nP n P P P n P P

Page 30: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

– Second Derivative

So we have

By the Curvature formula, we have

2''

2 1 , 2

0

( ) ( 1) ( 2 ) ( )n

i i i i n

i

P t n n P P P B t

)2)(1()0( 012

" PPPnnP

)2)(1()1( 21

"

nnn PPPnnP

3

01

1201 )()(1)0(

PP

PPPP

n

nk

3

1

121 )()(1)1(

nn

nnnn

PP

PPPP

n

nk

Page 31: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

– Difference form of k-th Derivative

• The high-order forward difference vector is

recursively defined by low-order forward

difference vector:

]1,0[)()!(

!)(

0

,

ttBPkn

ntP

kn

i

knii

kk

i

k

i

k

i

k PPP 1

1

1

ii PP 0

Page 32: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Symmetry( )

– The curve with control points

remain the shape of the curve P(t), but with

opposite direction.

* , ( 0,1,..., )i n iP P i n

*

, , ,

0 0 0

,

0

*( ) ( ) ( ) (1 )

(1 ), [0,1]

n n n

i i n n i i n n i n i n

i i i

n

i i n

i

C t P B t P B t P B t

PB t t

Page 33: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Convex hull ( ) Property

– By

and

– The curve P(t) is inside the convex hull of the

control polygon

n

i

ni tB0

, 1)(

),,1,0,10(1)(0 , nittB ni

Page 34: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Geometric invariance ( )

– It means that some geometry property doesn’t

change with Coordinates varying.

– The position and shape of Bezier curve are

dependent on vertex Pi of control polygon, but

not the Coordinates.

Page 35: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

de Casteljau Algorithm

• In industry application, it’s required to

evaluate a point on the curve at parameter t.

• We didn’t evaluate the value by the Bezier

Curve Equation, but use a recursive

algorithm, which is

numerical stable.

Page 36: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Please note

, , 1 1, 1

0 0

1 , 1

0

( ) ( ) (1 ) ( ) ( )

(1 ) ( )

n n

i i n i i n i n

i i

n

i i i n

i

P t PB t P t B t tB t

t P tP B t

Page 37: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• We have the recursive formula for evaluation of

Bézier curve by

1 1

1

0

1,2,..., ,(1 )

0,1,...,

i

k

i k k

i i

P k

P k nt P tP

i n k

0( ) nP t P

Page 38: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• When n = 3, the recursive procedure is

illustrated by the following figure:

0P

1P

2P

3P

1

0P

1

1P

1

2P

2

0P

2

1P 3

0P

n

iP

Page 39: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

)3/1(3

0 PP

0P

1P2P

3P

1

0P

1

1P1

2P2

0P

2

1P

Page 40: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

Geometric continuity

• In CAD applications, it’s not encouraged to design

a curve by high degree Bézier curve.

• It’s common to use lower degree Bézier curves with

smooth connections.

• Can we use traditional concept of continuity?

1 00

1 0 1 00

, 0 1 3

( )2( )

1 , 1 23 3

V VV t t

tV V V V

V t t

Page 41: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Please note

• This means the function is not continuous.

• But the function is actually a straight line.

• Such a fact implies traditional concept of

continuous is not suitable for describing smoothness

of shapes in CAD and Graphics.

• This is why we use “Geometric continuity”

• Liu and Liang ( )

013

1)1( VV 01

3

2)1( VV

Page 42: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Given two Bezier Curves defined by control points

and respectively

• Two curves share an end point, and :

11, jjjiii QQbPPa

b

PP

P

P

a

a P

Q

Q

bQ

Q(t)

( 0,1, , )iP i n ( 0,1, , )jQ j m

Page 43: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

– continuous

– continuous

and Pn-1 Pn = Q0, Q1 are collinear,

– continuous (curvature continuous )

)1()1()0( '"2" PPQ

)( 110 nn PPQQ

2

2

1

22

21

2211

2

nnn PP

nP

nQ

0G 0nP Q

1G

2G

Page 44: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

Degree raising/elevation

• Degree raising means that adding control

points to raise the degree of the Bézier curves,

but the shape and direction of the curve remain

unchanged.

– Degree raising increases the flexibility of shape

control.

– After degree raising, control points are changed.

– How to raising the degree of a polynomial? Bézier

curves?

Page 45: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Please note

• We have the degree raising formula

, ,

0 0

1

1 , 1

0

( ) ( ) (1 ) ( )

1( )

1 1

n n

i i n i i n

i i

n

i i i n

i

P t PB t P t t B t

n i iP P B t

n n

)1,,1,0(1

11

1

*

niP

n

iP

n

iP iii

Page 46: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• The above formula illustrates

– The new control points are linear combination of

the old control points with Coefficient i/(n+1).

– The new control polygon is inside the convex

hull of old control polygon.

– The new control polygon is nearer to the curve.

• Demo: curve-system

Page 47: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

Degree reduction

• Degree reduction is the opposite of degree

raising

– Can we reduce the degree of a polynomial without

change of shapes?

– Degree reduction is to find a curve defined by new

control points with minimum error

)1,,1,0(* niPi

Page 48: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

– Suppose Pi is result of degree raising Pi*:

– We can get two recursive formula

*

1

*

iii Pn

iP

n

inP

## 1 0,1, , 1i i

i

nP iPP i n

n i

1,,1,)( *

*

1

nnii

PinnPP ii

i

Page 49: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Then we have two kinds of degree reduction

schemes

– Forrest (1972)

– Farin (1983)

1,,12

1,

2

1,,1,0,

ˆ*

#

nn

iP

niP

P

i

i

i

*#

1)

11(ˆ

iii Pn

iP

n

iP

Page 50: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Reference for accurate degree reduction

– M. A. Watkins and A. J. Worsey, Degree reduction of

Bézier curves, Computer Aided Design, 20(7), 1988, 398-

405

– Approximate degree

reduction of Bezier curves, Tsinghua Science and

Technology, No.2, 1998, 997-1000. (was reported in

national CAGD conference, 1993)

– Degree reduction of B-

spline curves, Computer Aided Geometric Design, 2001,

Vol. 13, NO. 2, 2001, 117-127.

Page 51: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

Bezier surface

• Rectangular Bézier Surface

– Suppose is

control points, a degree rectangular Bezier

surface can be defined in the form of tensor

product

where and are

Bernstein polynomial.

),,1,0;,,1,0( mjnPij )1()1( mnnm

]1,0[,)()(),(0 0

,,

vuvBuBPvuPm

i

n

j

njmiij

imii

mmi uuCuB )1()(,

jnjj

nni vvCvB )1()(,

Page 52: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

– Bézier Surfaces by matrix representation

)(

)(

)(

)(,),(),(),(

,

,1

,0

10

11110

00100

,,1,0

vB

vB

vB

PPP

PPP

PPP

uBuBuBvuP

mn

m

m

nmnn

m

m

nmnn

Page 53: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Properties of rectangular

– Bézier Surface hold similar properties of Bézier

curves :

• The four corners of control net are also the corners

of the Bézier surface.

• The triangles

give tangent plane at 4 corners.

101000 PPP1,01 nnon PPP nmnmmn PPP ,11, 10,10 mmm PPP

00)0,0( PP 0)0,1( mPP nPP 0)1,0( mnPP )1,1(

Page 54: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

– Geometric invariance

– Symmetry

– Convex hull

10P20P

01P

11P21P

31P

02P 22P12P

32P

13P23P

00)0,0( PP

30)0,1( PP

03)1,0( PP 33)1,1( PP

)0,(uP

)1,(uP

),0( vP

),1( vP

Page 55: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Geometric continuity

– Given two degree m*n Bézier surfaces with

control points Pij and Qij:

)()(),(

)()(),(

,

0 0

,

0 0

,,

vBuBQvuQ

vBuBPvuP

nj

m

i

n

j

miij

m

i

n

j

njmiij

]1,0[, vu

),( vuP

),( vuQ

)0,0(P

)1,0(P

)0,1(Q

)1,1(Q

)0,0()0,1( QP

)1,0()1,1( QP

Page 56: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

– Conditions of G0 continuous:

i.e.,

– Conditions of G1 continuous:

),0(),1( vQvP

),,1,0(,0 miQP ini

),1()(),1()(),0( vPvvPvvQ vuu

Page 57: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• de Casteljau algorithm

– De Casteljau algorithm of Bézier curves can be

extended for surfaces. Given control points

and parameter (u,v).

we have

),,1,0;,,1,0( njmiPij

, .

, , , 00

0 0

( , ) ( ) ( )

, [0,1]

m k n lk l m n

i j i m j n

i j

P u v P B u B v P

u v

Page 58: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

are defined by following recursive formulas

Or

);,,2,1()1(

),,2,1;0()1(

)0(

,1

0,1

,1

0

1,0

1,

1,0,

nlmkuPPu

nlkvPPv

lkP

Pnk

i

nk

i

l

ji

l

ij

ij

lk

ij

),,2,1,()1(

)0;,,2,1()1(

)0(

1,

1,0

1,

,0

0,1

,1

0,1,

,

nlmkvPPv

lmkuPPu

lkP

Plm

j

lm

j

k

ji

k

ij

ij

lk

ji

,

,

k l

i jP

Page 59: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Straightforward interpretation of de Casteljau

algorithm

m

i

mi

n

j

njij

m

i

n

j

njmiij

uBvBP

vBuBPvuP

0

,

0

,

0 0

,,

)()(

)()(),(

Page 60: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Triangular Bézier surfaces

– Triangular Bézier surfaces are defined over

triangles, not squares.

– Barycentric coordinates (u,v,w) are used for the

definition of triangular Bézier surfaces .

Page 61: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

iu

jv),( ji vuP

)0,(uP

)1,(uP

),0( vP),1( vP

),,0( wvP

),0,( wuP

)0,,( vuP),,( kji wvuP

),,( kji wvu

Page 62: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Bernstein Base Function:

Where i+j+k=1 and i,j,k>=0.

– There are degree n Bernstein Base

functions.

]1,0[,,!!!

!),,(,, wvuwvu

kji

nwvuB kji

kji

)2)(1(2

1 nn

Page 63: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

22

020 vB

vwB 22

011 uvB 22

110

22

002 wB uwB 22

101 22

200 uB

Page 64: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

– Properties of non-negative and unity

– Recursive:

, ,

, ,

( , , ) 0

( , , ) 1

n

i j k

n

i j k

i j k n

B u v w

B u v w

),,(

),,(),,(),,(

1

1,,

1

,1,

1

,,1,,

wvuwB

wvuvBwvuuBwvuB

n

kji

n

kji

n

kji

n

kji

Page 65: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Definition of triangular Bézier surfaces

, , , ,

, , , ,

0 0

( , , ) ( , , )

( , , )

, , 0, 1

n

i j k i j k

i j k n

n n in

i j k i j k

i j

P u v w P B u v w

P B u v w

u v w u v w

Page 66: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.
Page 67: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• de Casteljau Algorithm

1,,,1,,,1,, kjikjikjikji wPvPuPP

Page 68: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

Conversion of Rectangular and

Triangular Bézier surfaces

• Because the rectangular and the triangular

patches use different base function, When

they are used in the same CAD system,

there will be some problem. So we

introduce the conversion between them.

• A triangular surface can be represented as

one degenerate rectangular surfaces or three

non-degenerate rectangular surfaces

Page 69: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• To a degenerate rectangular surface

,,,1,0,

,

1

0

21

1

0

ni

T

T

T

AAA

P

P

P

ini

i

i

i

in

i

i

Page 70: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

is a degree raising operator:),1,0( niAi

kk

k

knkn

kn

kn

kn

kn

kn

kn

kn

A

)1(100001

1

1000

001

1

1

20

00011

100001

Shi-Min, Hu Conversion between triangular and rectangular Bezier

patches, Computer Aided Geometric Design, 2001, 18(7), 667-671.

Page 71: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• To three rectangular surfaces

– Domain decomposition

1P2P

3P

P1D

2D

3D

)1,0(

),0(1 dP

)0,0(O )0,(3 bP

),( caP

2P

U

V

1D

3D

2D

)0,1(

Page 72: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• some operator

– Identiy operator:

– Shifting operator:

– Difference operator:

• With help of those operators, we can rewrite

triangular Bézier surfaces as

ijij TITI :

1,2,11 ,: jiijjiiji TTETTEE

ijjiijijjiiji TTTTTT 1,2,11 ,:

1 2 00

1 2 00

( , ) ( (1 ) )

( )

n

n

T u v uE vE u v I T

u v I T

Page 73: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• The control points defined over can be

obtained by1D

Page 74: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

CAGD 1996

Page 75: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

ACM SIGGRAPH

• Popup: Automatic Paper Architectures from

3D Models ( )

– Given a 3D architectural model with user-specified

backdrop and ground (left), our algorithm automatically

creates a paper architecture approximating the model

(mid-right, with the planar layout in mid-left), which

can be physically engineered and popped-up (right).

Page 76: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

• Finding Approximately Repeated Scene

Elements for Image Editing

– We propose a novel framework where simple

user input in the form of 8 scribbles are used to

guide detection and extraction of such repeated

9 elements

Page 77: Computer Graphics - Tsinghua University · Computer Aided Design journal, –he pointed out that, Bézier curve can be defined in terms of points with help of Bernstein Polynomials.

Thank You!