4 章  自由曲面を表現する

16
4章 章章章章章章章章章 章章章章章章章章章章章 章章章章章章章章章章章章章章章章章章章章章 章 . 章章章章章章章章章章章章章章章章 .

Upload: liko

Post on 06-Jan-2016

46 views

Category:

Documents


2 download

DESCRIPTION

4 章  自由曲面を表現する. 形状モデリングにおいて,任意の自由曲面を定義する必要のある場合がある . 自由曲面の表現法について説明する. y. y. P. x. x. z. V. 方向ベクトル. P 0. z. 4.1  パラメトリック表現    パラメトリック曲線. 直線. 円. P 0. U. P. V. U,V :円を含む平面上の直交ベクトル. 4.1  パラメトリック表現    パラメトリック曲面. 平面. 任意の曲面上の点 (x , y , z) は 2 個の パラメータ(u,v)の関数ベクトルで 表現できる.. y. x. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 4 章  自由曲面を表現する

4 章 自由曲面を表現する

形状モデリングにおいて,任意の自由曲面を定義する必要のある場合がある . 自由曲面の

表現法について説明する .

Page 2: 4 章  自由曲面を表現する

4.1  パラメトリック表現   パラメトリック曲線

VPPP tt 0)(

z

x

y

P0

P

V

方向ベクトル

直線

VUPPP )sin()cos()( 0 rr 円

z

y

xP0

VU

U,V :円を含む平面上の直交ベクトル

P

Page 3: 4 章  自由曲面を表現する

4.1  パラメトリック表現   パラメトリック曲面

VUPPP vuvu 0),(

平面

z

x

y

法線ベクトルU

V

P

任意の曲面上の点 (x , y , z) は 2 個のパラメータ(u,v)の関数ベクトルで表現できる.

),(

),(

),(

vufz

vufy

vufx

z

y

x

この表現法を曲面のパラメトリック表現という.

),(

),,(

),,(

vu

ffff

zyxP

zyx

fP

ベクトル表現

P0

Page 4: 4 章  自由曲面を表現する

4.2 曲線セグメントと曲面パッチ

曲線 → セグメント  →  曲線セグメント曲面 → パッチ    →  曲面パッチ

(1)形状を思い通りに制御できるか(2)セグメントやパッチがどのような式で表されるか(3)滑らかに接続できるか

このように点列で近似することが考えられるが, (3) の条件が満たされない.

曲線曲面

制御点制御多角形

Page 5: 4 章  自由曲面を表現する

4.3  制御点による曲線セグメントの生成    1 .曲線セグメントの一般式

1

10)()(

0

0

n

ii

i

n

ii

F

ttFt qP

n個の制御点  qi (n=0,1,2 ・・・, n-1)

q0

q1

q2

qn-1

∵q0= ・・・ =qn-1=q とすると, P(t)=q

n

ii tFt

0

)()( qP

Fi(t) の選び方によって,ベジェ曲線, B- スプライン曲線とよばれる曲線になる.

Page 6: 4 章  自由曲面を表現する

4.3  制御点による曲線セグメントの生成    2 .ベジェ曲線

!)(!

!

1})1{()(,)1()(

10,)()(

0

0

ini

nC

tttBttCtB

ttBt

in

nn

ii

iinini

i

n

ii

qP

n=3( 3次ベジェ曲線 ) の場合,

33

22

12

03

33

3322

2312

1303

03

33

03

)1(3)1(3)1(

)1()1()1(

)1()(

qqqq

qqqq

qP

tttttt

tCttCttCtC

ttCt iii

ii

P(0)=q0 , P(1)=qn が成り立ち,q0 と qn を通る.

Page 7: 4 章  自由曲面を表現する

4.3  制御点による曲線セグメントの生成    2 .ベジェ曲線 ( 例 )

q0

q1

q2

q3

q0

q1

q2

q3

Page 8: 4 章  自由曲面を表現する

4.3  制御点による曲線セグメントの生成    2 .ベジェ曲線 ( 接続 )

1q0

1q21q1

2q1

2q2

2q3

1P(t) の終点における接線と2P(t) の始点における接線が一致させるためには,1q2 , 1q3(=2q0) , 2q1 を一直線上に配置すればよい.

1q3=2q0

接線

Page 9: 4 章  自由曲面を表現する

4.3  制御点による曲線セグメントの生成    2 .ベジェ曲線 ( 例題 1)

q0=(1,0,0),q1=(5,5,0),q2=(15,7,0),q3=(10,2,0)

t=0 0.2 0.4 0.6 0.8 1.0

B0 1.00 0.51 0.22 0.06 0.01 0

B1 0 0.38 0.43 0.23 0.10 0

B2 0 0.10 0.23 0.43 0.38 0

B3 0 0.01 0.06 0.22 0.51 1.00

基底関数の値

0)(

)(2)(7)(5)(

)(10)(15)(5)()(

)0,2,10)(()0,7,15)(()0,5,5)(()0,0,1)((

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

321

3210

3210

tz

tBtBtBty

tBtBtBtBtx

tBtBtBtB

tztytxtP

Page 10: 4 章  自由曲面を表現する

4.3  制御点による曲線セグメントの生成    2 .ベジェ曲線 ( 例題 2)

q0=(1,0,0),q1=(5,5,0),q2=(15,7,0)t=0,0.3,0.6,1.0 のとき, P(t) を求めよ.

Page 11: 4 章  自由曲面を表現する

4.3  制御点による曲線セグメントの生成    3 . B- スプライン曲線

1)(

6

1)(

6

1

2

1

2

1

2

1)(

3

2

2

1)(

)331(6

1)1(

6

1)(

)()(

3

0

33

232

231

3230

0

tN

ttN

ttttN

tttN

tttttN

tNt

ii

i

n

ii qP

Page 12: 4 章  自由曲面を表現する

4.3  制御点による曲線セグメントの生成    3 . B- スプライン曲線

B- スプライン曲線の特徴

1

3

0

23

0

1 )()(,)()( ii

iii

i tNttNt qPqP

2

22

2

12

21

21

)0()1(

)0()1(

)0()1(

td

d

td

d

td

d

td

d

PP

PP

PP

終点と始点が一致

接線が連続

曲率が連続

Page 13: 4 章  自由曲面を表現する

4.4  制御点による曲面パッチの生成    1 .曲面パッチの一般式

曲線の議論を曲面に拡張

),,(

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

1)(,1)(

10,10,)()(),(

00

0 0

ijijijij

n

jj

n

ii

ijj

n

i

n

ji

zyx

vuzvuyvuxvu

vFuF

vuvFuFvu

q

P

qP

Page 14: 4 章  自由曲面を表現する

4.4  制御点による曲面パッチの生成    2 .ベジェ曲面

ベジェ曲面2つの重み関数として,バーンスタイン基底関数を用いたもの

10,10,)()(),(0 0

vuvBuBvu ijj

n

i

n

ji qP

3 次のベジェ曲面

})()()()(){(

})()()()(){(

})()()()(){(

})()()()(){(

)()(),(

3333223113003

2332222112002

1331221111001

0330220110000

3

0

3

0

qqqq

qqqq

qqqq

qqqq

qP

vBvBvBvBuB

vBvBvBvBuB

vBvBvBvBuB

vBvBvBvBuB

vBuBvu ijji j

i

Page 15: 4 章  自由曲面を表現する

4.4  制御点による曲面パッチの生成    2 .ベジェ曲面 ( 例 )

2 次ベジェ曲面

vq00

q10

q20

q01

q11

q21

q02

q12

q22

q00

q10

q20q30

q01

q11q21 q31

q02

q12

q22q32

q03

q03

q23 q33

3 次ベジェ曲面

uv

Page 16: 4 章  自由曲面を表現する

4.4  制御点による曲面パッチの生成    2 .ベジェ曲面 ( 例題 )

次のような制御点の座標値が与えられたとき, 3 次ベジェ曲面P (u,v) =(x(u,v),y(u,v),z(u,v))を求めよ .

)3,1,3(),3,2,2(),3,2,1(),3,1,0(

)2,3,3(),2,4,2(),2,4,1(),2,3,0(

)1,3,3(),1,4,2(),1,4,1(),1,3,0(

)0,1,3(),0,2,2(),0,2,1(),0,1,0(

33323130

23222120

13121110

03020100

qqqq

qqqq

qqqq

qqqq

さらに,u,v= 0,0.2,0.4,0.6,0.8,1.0 として,P(u,v)を作図しなさい.