Microsoft PowerPoint - 3D.ppt

Similar documents
コンピューターグラフィックスS

コンピュータグラフィックス第8回

vecrot

コンピュータグラフィックス第6回

Microsoft PowerPoint - ロボットの運動学forUpload'C5Q [互換モード]

2013年度 九州大・理系数学

PowerPoint Presentation

2011年度 大阪大・理系数学

断面の諸量

Microsoft PowerPoint - qcomp.ppt [互換モード]

2018年度 東京大・理系数学

座標系.rtf

線形代数とは

経済数学演習問題 2018 年 5 月 29 日 I a, b, c R n に対して a + b + c 2 = a 2 + b 2 + c 2 + 2( a, b) + 2( b, c) + 2( a, c) が成立することを示しましょう.( 線型代数学 教科書 13 ページ 演習 1.17)

Microsoft PowerPoint - 9.pptx

2011年度 東京工大・数学

Microsoft PowerPoint - Robotics_13_review_1short.pptx

技術者のための構造力学 2014/06/11 1. はじめに 資料 2 節点座標系による傾斜支持節点節点の処理 三好崇夫加藤久人 従来, マトリックス変位法に基づく骨組解析を紹介する教科書においては, 全体座標系に対して傾斜 した斜面上の支持条件を考慮する処理方法として, 一旦, 傾斜支持を無視した

スライド 1

Microsoft PowerPoint - 10.pptx

0 21 カラー反射率 slope aspect 図 2.9: 復元結果例 2.4 画像生成技術としての計算フォトグラフィ 3 次元情報を復元することにより, 画像生成 ( レンダリング ) に応用することが可能である. 近年, コンピュータにより, カメラで直接得られない画像を生成する技術分野が生

補足 中学で学習したフレミング左手の法則 ( 電 磁 力 ) と関連付けると覚えやすい 電磁力は電流と磁界の外積で表される 力 F 磁 電磁力 F li 右ねじの回転の向き電 li ( l は導線の長さ ) 補足 有向線分とベクトル有向線分 : 矢印の位

Microsoft PowerPoint - Salome-Meca.pptx

Microsoft Word - thesis.doc

クリックしてタイトル入力

代数 幾何 < ベクトル > 1 ベクトルの演算 和 差 実数倍については 文字の計算と同様 2 ベクトルの成分表示 平面ベクトル : a x e y e x, ) ( 1 y1 空間ベクトル : a x e y e z e x, y, ) ( 1 1 z1

簡単な図面を書いてみよう 『 3D編 』

<8D828D5A838A817C A77425F91E6318FCD2E6D6364>

p tn tn したがって, 点 の 座標は p p tn tn tn また, 直線 l と直線 p の交点 の 座標は p p tn p tn よって, 点 の座標 (, ) は p p, tn tn と表され p 4p p 4p 4p tn tn tn より, 点 は放物線 4 p 上を動くこと

2014年度 名古屋大・理系数学

Microsoft Word - 1B2011.doc

2011年度 筑波大・理系数学

Information is physical. Rolf Landauer It from bit. John Wheeler I think there is a world market for maybe five computers. Thomas Watson

Vectorworks 投影シミュレーションプラグイン

スライド 1

日本内科学会雑誌第98巻第4号

日本内科学会雑誌第97巻第7号

1

パソコンシミュレータの現状

数学 t t t t t 加法定理 t t t 倍角公式加法定理で α=β と置く. 三角関数

CG

Microsoft Word - 201hyouka-tangen-1.doc

DVIOUT-17syoze

座標変換におけるテンソル成分の変換行列

スライド 1

2014年度 千葉大・医系数学

AutoCAD メッシュ ソリッド モデリング

Microsoft PowerPoint povray演習-2.pptx

Microsoft Word - povray.docx

木村の物理小ネタ ケプラーの第 2 法則と角運動量保存則 A. 面積速度面積速度とは平面内に定点 O と動点 P があるとき, 定点 O と動点 P を結ぶ線分 OP( 動径 OP という) が単位時間に描く面積を 動点 P の定点 O に

20~22.prt

情報工学実験Ⅲ

重要例題113

機構学 平面機構の運動学

XAML Do-It-Yourself シリーズ 第 12 回 3D グラフィックス -1-

Microsoft Word - 微分入門.doc

2017年度 長崎大・医系数学

2018年度 神戸大・理系数学

Microsoft Word - 92.doc

2016年度 筑波大・理系数学

PowerPoint プレゼンテーション

2018年度 筑波大・理系数学

2 図微小要素の流体の流入出 方向の断面の流体の流入出の収支断面 Ⅰ から微小要素に流入出する流体の流量 Q 断面 Ⅰ は 以下のように定式化できる Q 断面 Ⅰ 流量 密度 流速 断面 Ⅰ の面積 微小要素の断面 Ⅰ から だけ移動した断面 Ⅱ を流入出する流体の流量 Q 断面 Ⅱ は以下のように

解答例 ( 河合塾グループ株式会社 KEI アドバンスが作成しました ) 特別奨学生試験 ( 平成 29 年 12 月 17 日実施 ) 数 学 数学 2= 工 経営情報 国際関係 人文 応用生物 生命健康科 現代教育学部 1 整理して (60 分 100 点 ) (2 3+ 2)(

例題1 転がり摩擦

2 Hermite-Gaussian モード 2-1 Hermite-Gaussian モード 自由空間を伝搬するレーザ光は次のような Hermite-gaussian Modes を持つ光波として扱う ことができる ここで U lm (x, y, z) U l (x, z)u m (y, z) e

スライド 1

応用数学A

2015年度 岡山大・理系数学

学習指導要領

学習指導要領

相関係数と偏差ベクトル

モデリングとは

<4D F736F F D EBF97CD8A B7982D189898F4B A95748E9197BF4E6F31312E646F63>

FreeCAD

2014年度 筑波大・理系数学

Microsoft Word - 断面諸量

Ł\”ƒ-2005

Transcription:

. 次元 CG Computer Graphics. 3-Dimension CG Numau College of Technolog Dept. of Computer & Control Production Sstem Lab. Version. 6.3.3. 次元 CG. 3 次元コンピュータグラフィックス. 3 次元座標系. 座標変換 ( 幾何変換 ).3 座標変換の基礎知識.4 座標変換 (Viewing).5 3Dクリッピング

. 3 次元座標系 右手座標系 Z Y 左手座標系 Z X 数学の世界 Y 違いは Z 軸の方向が逆 X CGの世界 (XY: スクリーン Z: 奥行き ). 座標変換 ( 幾何変換 ) 平行移動 t t t 拡大 縮小 回転 (X 軸 ) s s cosα sinα s -sinα cosα

平行移動 ( 幾何変換 : 図 ) Z Z t P(,,) P(,,) P(,,) X Y X t t Y 移動前 移動量 t,t,t 移動後 平行移動 ( 幾何変換 : 変換式 ) + t + t + t t t t Tt(t,t,t) 3

拡大 縮小 ( 幾何変換 : 図 ) Z 原点中心 Z s* P(,,) X P(,,) Y s* X P(,,) s* Y 変換前 拡大 縮小率 s,s,s 変換後 拡大 縮小 ( 幾何変換 : 変換式 ) 原点中心の回転 s s s Ts(s,s,s) 4

回転 ( 幾何変換 : 回転軸 ) Z 軸中心の回転移動 X 軸中心 Y 軸中心 Z 軸中心 YZ 平面内 ZX 平面内 XY 平面内 X 回転の方向は 軸先端からみて左回り Y 回転 ( 幾何変換 :X 軸回り ) Z X 軸回りの回転 Pr(r,r,r) α P(,,) cosα sinα -sinα cosα X Y Tr(α) 回転の方向は 軸先端からみて左回り 5

回転 ( 幾何変換 :Y 軸回り ) Z Y 軸回りの回転 Pr(r,r,r) β P(,,) cosβ -sinβ sinβ cosβ X Y Tr(β) 回転の方向は 軸先端からみて左回り 回転 ( 幾何変換 :Z 軸回り ) Z 軸回りの回転 Z cosγ sinγ -sinγ cosγ X Pr(r,r,r) γ P(,,) Y Tr(γ) 回転の方向は 軸先端からみて左回り 6

合成変換 次元と同様に同次座標系を用いる これらの変換はアフィン変換である 直線は直線に 直線上の点の比も維持される 次元と同様に一連の変換は 変換行列で表すことができる 変換の例任意点 (,,) を中心とする拡大 ( 幾何変換 ) X Tt(,,) Ts(s,s,s) Tt(-,-,-)X 任意点 (,,) を通り 軸に平行な直線を中心とした回転 ( 幾何変換 ) X Tt(,,) Tr(α) Tt(-,-,-)X 任意直線まわりの回転 点 (,,) を通り 単位ベクトルが (l,m,n) の直線回りに θ 回転させる変換 TTt(,,) Tr(-α) Tr(-β) Tr(θ) Tr(β) Tr(α) Tt(-,-,-) ここで cosα n m + n sinα m m + n cosβ m + n cosβ l 7

.3 座標変換の基礎知識.3. モデル座標とワールド座標.3. ワールド座標とビュー座標.3.3 ビュー座標とスクリーン座標.3.4 投影法.3. モデル座標とワールド座標 Z Z Y X Cone Z Y X Cube Z モデル座標 ( オブジェクト座標 ) 各プリミティブ毎に定めた座標 X Y Sphere X Clinder Y 8

モデル座標とワールド座標 World Coordinate Z Object Coordinate Z3 X ワールド座標 X3 Z Y 実際に表示を行う 3 次元空間 Y3 X Y Object Coordinate Object Coordinate 3.3. ワールド座標とビュー座標 ワールド座標 ( 右手座標系 ) ビュー座標 ( 左手座標系 ) [ カメラ座標ともいう ] 9

ワールド座標とビュー座標 ワールド座標 ( 右手座標系 ) ビュー座標 ( 左手座標系 ) [ カメラ座標ともいう ].3.3 ビュー座標とスクリーン座標 Screen Screen Ys Xs 視点 ビュー座標 ( 左手座標系 ) スクリーン座標 ( 次元 )

.3.4 投影法 並行投影 ( 正射影 ) Screen 透視投影 Screen 機械設計製図用 ( 長さが正確 ) 視点 遠近感がありデザイン用 ( 長さが正確ではない ) 投影法の比較 並行投影 ( 正射影 ) camera 透視投影

.4 座標変換.4. モデリング変換.4. 視野変換.4.3 投影変換.4.4 Viewing 座標変換 (Viewing) 描画までの座標変換 (Viewing) の手順 モデリング変換 空間と形状の定義 モデリング座標系からワールド座標系へ視点 目標点 スクリーンサイズ視野変換 ( 視界変換 ビューイング変換 ) ワールド座標系から視点 (View) 座標系へ 投影変換 ( 射影変換 ) 視点 (View) 座標系からスクリーン座標へ ( スクリーン座標からディスプレイ座標へ )

モデリング変換 Model Coordinate γ Z モデル座標 α H: 高さ R,R: 半径 X Y (C,C,C) β ワールド座標 World Coordinate 視点 View Coordination 視野変換 投影変換 Screen ViewPoint World Coordination Pw ワールド 視野変換 座標 座標の読替 Pw Pw Ps ビュー座標 Ps Ps 投影変換 視軸 座標の移動 目標点 TargetPoint スクリーン座標 3

.4. モデリング変換 Model Coordinate γ Z α H: 高さ R,R: 半径 X Y (C,C,C) β World Coordinate モデル座標原点の位置 :C,C,C 各軸回りの回転角 :α,β,γ モデリング変換 ( 変換パラメータ ) Model Coordinate γ Zm Zm α Pm(Pw) Xm Ym Cm β Pm Xm Ym World Coordinate Model Coordinate Pw(Pw,Pw,Pw) Pm(Pm,Pm,pm) 4

モデリング変換 ( 次元でのイメージ ) 配置後は見る座標系の原点が異なる モデリング変換 ( 平行移動 ) モデル座標原点をワールド座標の原点にあわせる Zm Xm Zm Cm -C -C -C Pm Pm Pm Xm Ym XTt Pm Ym 5

モデリング変換 (Y 軸回りの回転 ) Ym 軸を β 回転させ Zm 軸を Ym 平面にあわせる Zm Zm cosβ sinβ -sinβ cosβ Xm Xm β XT(β) X Ym Ym モデリング変換 (X 軸回りの回転 ) Xm 軸を α 回転させ Zm 軸を 軸にあわせる Xm,Ym は 平面内に移動する Zm Zm 3 3 3 cosα -sinα sinα cosα α Xm Xm Ym Ym X3T(α) X 6

モデリング変換 (Z 軸回りの回転 ) Zm 軸を γ 回転させモデリング座標をワールド座標にあわせる γ Zm Zm Pw Pw Pw cosγ sinγ -sinγ cosγ 3 3 3 Xm Xm Ym PwT(γ) X3 Ym モデリング変換 ( 変換式 ) World Coordinate Model Coordinate γ Zm α Pm(Pw) Xm Ym Cm β Pm(Pm,Pm,pm) XTt Pm XT(β) X X3T(α) X PwT(γ) X3 Pw(Pw,Pw,Pw) PwT(γ) T(α)T(β) Tt PmTmw Pm Pm Tt - T(β) - T(α) - T(γ) - PwTmw - Pw 7

.4. 視野変換 視点 View Coordination Screen ViewPoint World Coordination φ Pw Pw Pw 視点 :V(V,V,V)w 目標点 :T(T,T,T)w スクリーンサイズ :SX,SY 画面の傾き :γ 画角 :φ Ps Ps Ps 視軸 目標点 TargetPoint 視野変換と投影変換概要 ( 次元イメージ ) 視野変換 World View 投影変換 View Screen 画角 :φ 8

視野変換 (World to View) 視点 ViewPoint (V,V,V)w ワールド座標の値をビュー座標で読む View Coordination World Coordination Pv(Pv,Pv,Pv) Pw(Pw,Pw,Pw) 視軸 γ 目標点 TargetPoint (T,T,T)w 視野変換 ( 平行移動 ) 視点の原点をワールド座標原点に移動する 視点 -V -V -V Pw Pw Pw World Coordination XTt Pw 9

視野変換 (Y 軸回りの回転 ) 軸回りの角度 α の回転により 軸を 平面に重ねる cosα -sinα sinα cosα α XT(α) X Y 軸まわりの回転角 cosα sinα ( V T) V T ( V T) + ( V T) ( V T) + ( V T) ここで α は の先端から原点方向を見た場合の右回りを正とする TvV かつ TV の場合 ( 真上から物体を見る ) は分母が ZERO となり計算不能となるこの場合 cosα sinα とする

視野変換 (X 軸回りの回転 ) 軸回りの角度 β の回転により - 軸を 軸に合わせる β 3 3 3 cosβ -sinβ sinβ cosβ X3T(β) X X 軸まわりの回転角 cosβ ( V T) ( V T) + ( V T) + ( V T) + ( V T) sinβ ( V T) V T + ( V T) + ( V T) ここで β は の先端から原点方向を見た場合の右回りを正とする TvV かつ TV かつ TV の場合 ( 視点と目標点が同じ ) は分母が ZERO となり計算不能となるこの場合 目標点を視軸上に移動させる

視野変換 (Z 軸回りの回転 ) 軸回りの角度 γ の回転により 軸を 軸に合わせる γ 4 4 4 cosγ Sinγ -sinγ cosγ 3 3 3 X4T(γ) X3 視野変換 (Z 軸の反転 ) 右手座標から左手座標に変換する Pv Pv Pv - 4 4 4 PvT(-) X4

視野変換 (World to View: 変換式 ) 視点 ViewPoint (V,V,V)w View Coordination World Coordination Pv(Pv,Pv,Pv) Pw(Pw,Pw,Pw) 視軸 γ 目標点 TargetPoint (T,T,T)w Pw(Pw,Pw,pw) XTt Pw XT(β) X X3T(α) X X4T(γ) X PvT(-) X4 Pv(Pv,Pv,Pv) PvT(-)T(γ) T(α)T(β) Tt PwTwv Pw Pw Tt - T(β) - T(α) - T(γ) - T(-) - PwTwv - Pv 視野変換 ( 参考 ) ワールド座標とビュー座標が同じ右手座標系なら T(-) は不要である 視野変換は 座標を読み替えるだけであり 点は移動しない World to View PvT(-)T(γ) T(α)T(β) Tt() PwTwv Pw View to World Pw Tt() - T(β) - T(α) - T(γ) - T(-) - PwTwv - Pv 3

.4.3 投影変換 視点 View Coordination Screen(SX,SY) Pv ViewPoint (V,V,V)w Pw Pw Ps World Coordination Pw Ps Ps 視軸 γ 目標点 TargetPoint (T,T,T)w Pw(Pw,Pw,Pw) Pv(Pv,Pv,Pv) Ps(Ps,Ps,Ps) 投影変換 (View to Screen) SY SX Ps Screen Pv Pv(Pv,Pv,Pv) Ps(Ps,Ps,Ps) 4

投影変換 ( スクリーンまでの距離 ) SY SX Ps Screen depth φ SX: 画面の X サイズ Φ: 画角 ( 広角 望遠 ) スクリーンまでの距離 depth SX/tanφ 投影変換 ( 求め方 ) Ys Pv Pv Ps Ps SY Ps Pv depth/pv Pv depth SCREEN Xs Pv Pv Ps Ps SX Ps Pv depth/pv Pv depth SCREEN 5

投影変換 ( 行列表現 ) Ps Pvs Ps depth/pv depth/pv depth/pv Pv Pv P depth/pv Pv Pv P 但し スクリーン座標は 次元なので Ps は省略する Depth または Pv とならないように注意 投影変換 (View to Screen: 変換式 ) World to Screen Ps Tvs Pv Screen to World Tvs depth/pv Pv Tvs - Ps Tvs - Pv / depth Pvdepth とする 6

Pm Tmw - Pw Pw Twv - Pv Pv Tvs -.4.4 Viewing(Model-World-View-Screen) Model 座標 :Pm(pm,pm,pm) Ps ps d SX/ ps -d + SY/ モデリング変換 World 座標 :Pw(pw,pw,pw) 視野変換 View 座標 :Pv(pv,pv,pvw) 投影変換 Screen 座標 :Ps(pv,pv) displa 座標 :Pd(pd,pd) PwTmw Pm PvTwv Pw Ps Tvs Pv pd s + SX/ pd -s + SY/ Viewing(Model-World-View) 視点 View Coordination Screen ViewPoint World Coordination φ Model 座標 :Pm(pm,pm,pm) Pv Tmw - Twv - Tvs - Ps Ps Tvs Twv Tmw Pv Screen 座標 :Ps(pv,pv) ps d SX/ ps -d + SY/ Pw Pw Pw Ps Ps Ps displa 座標 :Pd(pd,pd) 視軸 目標点 TargetPoint pd s + SX/ pd -s + SY/ 7

.5 3D クリッピング 次元のクリッピングと同様に描画する必要のない形状を除去する 手順. View Volume を求める. Bounding Bo を求める 3. 交差判定を行う 4. 交差した Bounding Bo 内の形状とクリップ面との交差面を取り出す [ 交差面計算は 処理系 (OpenGL など ) が行う ] View Volume ( 視体積 ) 背面クリッピング面 視軸 Screen View Volume 前面クリッピング面 対象形状がビューボリューム内に有るか無いか判定する 8

Bounding Bo 背面クリッピング面 視軸 Screen 前面クリッピング面 View Volume Bounding Bo 対象形状を球あるいは直方体 ( バウンディングボックス ) でつつみ ビューボリュームとの交差を判定する Cohen-Sutherland Algorithm( 順次クリッピング ) (-,,) 視軸 Zmin 背面クリッピング面 (-,-,) (,,) ビューボリュームの前 (Z<Zmin) ビューボリュームの後 (Z>) ビューボリュームの左 (X<-Z) (,,) 前面クリッピング面 (,-,) 標準ビューボリューム ビューボリュームの右 (X>Z) ビューボリュームの下 (Y<-Z) ビューボリュームの上 (Y>Z) If P or P then 線分全体が標準ボリューム内 else if P & P! then else 線分全体が標準ボリューム外線分の一部が標準ボリューム内の可能性有り 9

BSP(Binar Space-Partioning)-Tree 対象形状 ( 面の集合 ) を視点の前後の面に分解する BSP-Tree は隠面処理にも利用される BSP(Binar Space-Partioning)-Tree 領域を区切ることにより 領域が限定され 前後関係も構築されるゲームや CG 描画に多用されている技術である 3

課題 : まとめ ( 座標変換 ) 次の文章はコンピュータグラフィックスにおける 3 次元座標変換について説明したものである 文中に入る適切な語句を記述せよ コンピュータグラフィックスに用いられる座標は () 円柱や球など形状毎に決められた座標である <A> 座標 () 実際の描画対象となる 3 次元空間座標である <B> 座標 (3) 視点を原点とし <C> を Z 軸とする <D> 座標 (4) スクリーン中心を原点とし <C> に直交する <E> 座標がある 一般に形状を定義する空間は右手 左手座標のうち <F> 座標が用いられ スクリーンに投影する <D> 座標は <G> 座標が用いられる <A> 座標に定義された形状を <B> 座標に変換する手順を <H> 変換という また < B> 座標に対して設定した 視点 目標点 画角 画面の傾き スクリーンサイズを与えて <D> 座標に変換する手順を <I> 変換という そして <D> 座標で表された形状を <E > 座標に変換する手順を <J> 変換という この変換には遠近感を出さずに投影する <K > 投影と 通常使われる遠近感を出す <L> 投影がある この変換により 3 次元立体を 次元に映し出すことができる <I> 変換における演算手順を行列で表すと () 平行移動 (Tp), () 軸回りの回転 (Tα),(3) 軸回りの回転 (Tβ), (4) 軸回りの回転 (Tγ), (5) 軸の反転 (Tinv) となり, これらの変換を順に行い 両座標の座標軸を一致させればよい 故に <B> 座標の点 Pw を <D> 座標の点 Pv に変換するには 上述の行列を用いて Pv <M>Pw で表すことができる 逆に Pv を Pw に変換するには 上述の行列を用いて Pw <N>Pv で表すことができる 課題 : 座標変換 次に <J> 変換では 視点からスクリーンまでの距離 dが必要となる 画角 φとスクリーンの画面サイズ SXが与えられたとき dは d<o> で求めることができる この関係より<D> 座標で表された点 Pv(v,v,v) は <E> 座標 Ps(s,s) ではdを用いて s <P>v s <P>v で表すことができる この過程を経て <B> 座標の点をスクリーン上の点に映し出すことが可能となる 視点 Screen Screen φ Pw Pw Pw Ps Ps Ps 視軸 目標点 目標点 3

課題 : まとめ ( 手計算 ) 問. モデル座標上の点 (9,5,5) が各座標変換や投影により座標値がどのように変 化するかを示せ モデル座標原点のワールド座標での位置 C(5,6,3) 回転は無し 視点 (,,) スクリーンまでの距離 7 目標点 (,,) 画面サイズ (SX/SY/) 画面の傾き( 左回りに9 度 ) Ans モデル座標 (9,5,5) ワールド座標 [ ] ビュー座標 ( スクリーンの回転前 )[ ] ビュー座標 ( スクリーンの回転後 )[ ] スクリーン座標 [ ] Zm Clinder Ym Xm (5,6,3) Ys Screen Xs 課題 3: まとめ ( 行列計算 ) 問. モデル座標上の点 (9,5,5) が各座標変換や投影により座標値がどのように変 化するかを示せ ただし 変換マトリックス ( 合成マトリックス ) を用いて解くこと モデル座標原点のワールド座標での位置 C(5,6,3) 回転は無し 視点 (,,) スクリーンまでの距離 7 目標点 (,,) 画面サイズ (SX/SY/) 画面の傾き( 左回りに9 度 ) Ans モデリング変換行列 Tmと変換後の座標 [ ] ビューイング変換行列 Tv ビュー座標 ( スクリーンの回転前 )[ ] ビュー座標 ( スクリーンの回転後 )[ ] スクリーン座標 [ Zm ] Clinder Ym Xm (5,6,3) Ys Screen Xs 3