2. 2次元CG Computer Graphics 3. Geometric Modeling Numazu College of Technology Dept. of Computer & Control CG・CAD/CAM Laboratory Version 1.1 2006.03.31 2. 2次元CG 3. 形状モデル (Geometric Model) 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 形状モデル(形状モデリング) 形状モデルの分類 ワイヤーフレームモデル サーフェイスモデル ソリッドモデル CSGモデル B-Repsモデル 空間格子モデル 1 3. 3次元CG 形状モデルの利用例 形状モデルの利用例 3. 3次元CG 3.1 形状モデル(形状モデリング) コンピュータに取り込む 実体 形状モデル 実体をコンピュータが理解できる形式に変換する 形状モデリング 形状モデル 2 3. 3次元CG 3.2 形状モデルの分類 形状モデル(分割手法で分類) 形状分割モデル ワイヤーフレーム サーフェイス ソリッドモデル(CSG、B-Reps) 空間分割モデル 空間格子モデル 一般的 形状モデル(表現手法で分類) ワイヤーフレーム サーフェイス ソリッドモデル CSG B-Reps 空間格子モデル(離散モデル) 3. 3次元CG 形状モデルの概念比較 ワイヤーフレームモデル ソリッドモデル サーフェイスモデル 空間格子モデル 3 3. 3次元CG 3.3 ワイヤーフレームモデル 6 10 9 7 16 6 1 5 13 11 14 15 5 3 2 3 4 10 11 7 12 8 辺 テーブル 頂点テーブル 0 0 2 1 9 8 4 頂 点番 号 x y z 0 1 2 3 4 5 6 7 8 9 10 11 25 20 20 25 25 5 5 5 5 20 20 25 15 15 5 5 5 5 15 15 5 5 15 15 15 15 15 15 2 2 2 5 5 5 5 2 辺 番号 S TART Z Y X 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 0 0 1 2 3 0 1 2 4 7 9 8 7 6 4 5 6 5 END 1 3 2 3 4 11 10 9 11 10 10 9 8 11 5 8 7 6 3. 3次元CG ワイヤーフレームモデルの特徴 ワイヤー(針金)で形状を組み立てる方式 長所 ・データ構造が簡単である ・複雑な形状でも高速処理が可能 短所 ・円筒面、曲面の表現が困難 ・描画される形状の解釈が困難 ・面の概念を持たないため隠面・線処理不可 4 3. 3次元CG ワイヤーフレームモデルの問題点の例 Sphere or circle? Sphere Where is truth? Truth is out of there. 3. 3次元CG 3.4 サーフェイスモデル Z Y 6 X 10 9 7 16 6 1 3 2 3 5 4 10 11 7 13 9 11 12 8 17 15 8 頂 点番 号 x y z 0 1 2 3 4 25 20 20 25 25 5 15 15 5 5 5 15 15 15 15 2 0 1 2 3 4 5 E ND 0 0 1 2 3 0 1 3 2 3 4 11 面テーブル 5 辺 面 5 3 4 0 6 辺 番号 S TART 4 14 1 辺 テーブル 頂点テーブル 0 0 2 1 0 1 2 3 4 5 6 7 L0 4 0 16 2 1 0 9 14 L1 3 6 17 6 5 2 12 8 L2 7 9 15 10 8 2 11 8 L3 11 16 12 7 4 1 10 17 L4 15 13 L5 14 5 2 7 5 3. 3次元CG 曲面表現 Non-Uniform Rational B-Spline n NURBS曲面 Pi+2,j-1 パッチ S(u, v) = i= 0 j=0 n Pi,j z Pi+2,j+2 Pi-1,j-1 Pi-1,j+2 x u方向 Ni,k (t) = i,k (u)M j,l (v)w ijPij m ∑∑ N i =0 j= 0 v方向 y m ∑∑ N i,k (u)M j,l (v)w ij t − ti t −t Ni,k −1 (t) + i+k Ni+l,k −1 (t) t i+k −1 − t i t i+k − t i+1; ⎧1 (t i ≤ t ≤ t i+1 ) Ni,1 (t) = ⎨ ⎩0 (t < t i+1, t i+1 < t) T = [t 0 t 0 t 0 ・・・ t n+k −1 ] その他の曲面式 Coons曲面 , B-Spline曲面 , Bezier曲面 3. 3次元CG サーフェイスモデルの特徴 ワイヤーフレームに面情報を付加したデータ形式 (CGの世界では今でも使用されている) 長所 ・データ構造が比較的簡単である ・面情報に基づいて高速処理描画が可能 ・曲面の表現が可能(FEM、曲面加工が可能) 短所 ・面と面の関係がないため立体として認識ができない ・曲面の精度を上げるとデータ量が増える ・面の裏表が無いため内部の有無表現ができない (マスプロパティ計算ができない) 6 3. 3次元CG サーフェイスモデルの問題点の例 曲面の分割と精度 高精度 高精度 データ量大 データ量大 18 36 72 3. 3次元CG サーフェイスモデルの問題点の例 面6 立体を認識できない 面1 辺1 辺2 面4 面3 面5 6面から構成されている直方体の場合 ・6面から構成されていることはわかる ・しかし、面と面の関係はわからない ・辺と辺の関係もわからない ・どちらが表かわからない 面2 位相情報 6面からなる立体であることはわかるが、直方体であることは認識できない 7 3. 3次元CG 3.5 ソリッドモデル(Solid Model) ソリッドモデルの利用例 立体を内部情報を含めて表現(主流となりつつある) 車のブレーキの干渉 部品の熱特性 車体周りの空気 の流れ解析 クボタ・ケー・ジー・ティーのHPより(http://www.kgt.co.jp/) 3. 3次元CG ソリッドモデルの特徴と概念比較 空間格子モデル CSG B-Reps A + - B M o d el = (A + B ) -C C Model = Geometric + Topology ・形状の内部情報を持つためマスプロパティ計算が可能 ・幾何形状を認識できる ・形状間の衝突チェックが可能となる 8 3. 3次元CG 3.6 CSGモデル プリミティブ形状 円錐 Constructive Solid Geometry ピラミッド 円柱 トーラス 球 ボックス 個々のプリミティブは数式で表現する セットオペレーション (形状間の論理演算) 球:半径(r) x2 + y2 + z 2 = r 2 円柱(円筒):半径(r) x2 + y2 − z 2 = r 2 3. 3次元CG セットオペレーション例 A B C D=(A+B)-C D=fx(A,B,C) 9 3. 3次元CG CSGモデルの特徴 形状を数式で表されたプリミティブの集合演算で表現 1973に北大沖野教授が提案 TIPS-1 長所 ・データ構造が簡単でかつ、生成手順を示す ・生成過程での形状の変更が容易 ・形状の妥当性と形状精度が保証される 短所 ・数式で保持しているため描画が遅い(ポリゴン化が必要) ・複雑な処理(例えば干渉計算)を行う場合、数式間の演算 が発生し処理時間を要する ・自由曲面を数式立体として持つことが困難 Feature Model 現状 現在は形状の入力手法として利用されている 3. 3次元CG 3.7 B-Reps(境界表現)モデル Boundary-Representations 5 面 の法 線ベク ト ル 5 10 3 9 4 1 0 7 16 6 6 2 辺 テーブル(2倍持つ) 頂点テーブル 頂 点番 号 0 1 2 3 4 x y z 25 20 20 25 25 5 15 15 5 5 5 15 15 15 15 2 辺 番号 S TART 0[0] 0 1[1] 0 2[1] 1 12[0] 7 12[1] 8 5[0] 0 END 1 3 2 8 7 11 辺12[0]= 7->8 7 15 5 面 の法 線ベク ト ル 7 9 11 8 面 の表 から 見 て左回 り 2 17 7 10 6 12 辺12[1]= 8->7 8 8 面テーブル 辺 面 0 1 4 2 6 5 3 7 L0 4[1] 0[0] 16[1] 12[1] 12[0] 0[1] 9[0] 14[1] L1 L2 3[1] 7[0] 6[0] 9[1] 17[0] 15[0] 16[1] 17[1] 11[0] 10[0] 2[1] 2[1] 12[0] 12[0] 8[1] 8[1] L3 L4 L5 11[0] 15 14[0] 16[1] 13 5[1] 12[0] 15[1] 9[0] 1[1] 10[0] 17[1] 以上は幾何情報であり、さらに面と面の構成情報(位相情報)を持つ 10 3. 3次元CG カーネルデータの概念 幾何情報と位相情報から成り立つ (geometry) (topology) 位相情報 現在主流の形状モデル 幾何情報 立体 面と立体の隣接関係 面から分岐する立体の関係 面 面・曲面 辺 辺・曲線 頂点 点 辺と面の隣接関係 辺から分岐する面の関係 頂点の辺の隣接関係 頂点から分岐する辺の関係 曲面式 面の構成要素 曲線式 辺の構成要素 頂点の座標 3. 3次元CG 位相データの持ち方(Winged-Edge) Winged-Edgeデータ構造(現在主流のデータ構造) 稜線:Ln-ccw 稜線:Lp-cw 頂点 Pp 面:Np ・1本の稜線の上下には必ず2つの頂点 (Pp,Pn)が存在する Edge ・1本の稜線の左右には必ず2つの面(Sp,Sn) が存在する 面:Sp ・2つの頂点からは2本ずつ稜線が存在する 頂点 Pn 稜線:Ln-cw データ構造とルール 稜線:Lp-ccw 稜線(Edge) 頂点 Pp 頂点 Pn 稜線 Lp-cw 稜線 Ln-cw 稜線 Lp-ccw 稜線 Ln-ccw 面 Sp 面 Np 近年はさらに発展した half-edge -> radial-edgeになってきている 11 3. 3次元CG カーネルの構成例 DesignBaseの構成図 http://www.ricoh.co.jp/designbase/concept/index.html 3. 3次元CG B-Repsモデルの特徴 形状を面主体の幾何情報と位相情報で表現 1973に英ケンブリッジ大I.C.Braidが提案 BUILD 長所 ・面データが主体なので表示が高速で美しい ・生成過程での形状の局所変更が容易 短所 ・存在できない形状の生成を許してしまう ・データ構造が複雑であるため、複雑な処理(例えば干渉計 算)を行う場合、処理時間を要する ・曲面の多面体化による精度の劣化をまねく 現状 現在はCAD用形状モデルの標準となっている 12 3. 3次元CG B-Repsの問題点の例 変形により位相が異なる形状が生成される 点を押し出す 自己干渉 B-Repsの問題点の解決法 3. 3次元CG (Euler Operation) Euler Poincare Equation : 位相構造の矛盾を検出 v-e+f-r=2(b-h) v:頂点の数 e:辺の数 f:面の数 r:面の内部ループ数 b:物体の数 h:物体を貫通する穴の数 v-e+f-r=2(b-h) 16 - 24 + 10 - 2 = 2 ( 1 - 1 ) 13 3. 3次元CG B-Repsで表現できない形状 非多様体 従来のWinged-Edge では表現できない データ構造 Radial-edge Euler式 v - e + ( f - r ) - ( V - Vh + Vc ) = C - Ch + Cc V, Vh, Vc はそれぞれ、volume, volume の貫通穴, volume の空洞の個数 C, Ch, Cc は連結成分, 貫通穴, 空洞の個数) 3. 3次元CG 現在主流のカーネルモデル ・ACIS(仏Dassault Systems系-米Spatial Technology) from・Z(CG)、AutoCAD,TurboCAD, CADKEY ファイル形式:*.SAT http://www.spatial.co.jp/ ・Parasolid(米Unigraphics Solutions) Solidworks, SolidEdge, SolidMAN, MasterCAM Solid(CAM) ファイル形式:*.x_b http://www.ugsjapan.com/ ・Designbase(日Richo) 図脳Century3D, MicroCADAM Helix http://www.ricoh.co.jp/designbase/ 現在流通する形状データ *.sat , *.stl, *.dxf, *.obj, *.igs インターネット上で流通 *.wrl(VRML) , *.xvl(Lattice Kernel) 14 3. 3次元CG まとめ(ソリッドモデルの特徴) ソリッドモデルの特徴 形状モデル 長 所 短 所 データ構造が簡単 データ量が少ない 形状の正当性が保証される B-Repへの変換可能 変形のやり直しが簡単 局所変形が困難 曲面の表現が困難 グラフィック表示が遅い 工具経路生成複雑 図面化が困難 B-Rep 局所変形が容易 曲面の表現が容易 グラフィック表示が高速 工具経路生成簡単 図面化が容易 データ構造が複雑 データ量が多い 形状の正当性が保証されない CSGへの変換が困難 空間格子 データ構造が簡単 形状は空間一意性を持つ 工具経路生成が簡単 形状処理が簡単 干渉チェックが高速 マスプロパティ計算が容易 精度を上げるとデータ量膨大 他のモデルへの変換が困難 データ量が姿勢に依存する CSG 3. 3次元CG 3.8 空間格子モデル オルタネータの非破壊検査と熱解析 マニホールドの検査 ターボエンジン部品の非破壊検査 15 3. 3次元CG 応用例 骨の可視化 エンジンブロックの可視化 3. 3次元CG 応用例 歯の内部の可視化 全て VGStudio により作成された映像です http://www.ittc.co.jp 16 3. 3次元CG 空間格子モデルの概念(2D) 空間格子モデル(Spatial-Partitioning Representations) Y Y X 0 Y X 0 Y 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 1 1 0 0 1 1 0 0 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 X X 0 3. 3次元CG 空間格子モデルの種類 Y Z z(i,j) y(j) Z Y x(i) X Voxel (3次元配列) X Z-map (Z軸データに限定2次元配列) 17 3. 3次元CG Z-Mapモデルの応用例(静岡) 静岡県 3. 3次元CG Z-Mapモデルの応用例(三島) 三島-箱根 18 3. 3次元CG 空間格子モデルの特徴 形状を微少な直方体の集合体で表す MRI,CTなど画像処理技術として発展してきた 長所 ・データ構造が簡単 ・加工に必要な情報(干渉,内外判定)の計算が容易 ・画像や測定データなど取り扱うデータ形式、形状に制限がない 短所 ・精度を上げようとすると膨大なメモリを要求する ・幾何形状の画面への表示精度が劣る 現状 ・医療データの可視化技術として多用されている ・加工情報生成にも利用されているが、補助としての扱いが多い 3. 3次元CG 空間格子モデルの問題点の解決手法 Y Z y(j) Z Y X X Octree Enhanced Z-map ・データが複雑で管理しにくい(処理速度の低下) ・精度の分割領域の判定が難しい 19 3. 3次元CG Boundary-Map Geometric Model Y Y X 0 Y Y 0 X 0 Boundary-Map X 0 Voxel X 3. 3次元CG Boundary-Map の応用 SetOperation Tool Engine Path NURBS+Primitive Machined Mt. Fuji Shape Voxel Boundary-Map NC Simulation 20 3. 3次元CG MRIからの変換例 3. 3次元CG 課題1:まとめ 問. 次の形状に対してオイラー式を作れ 21 3. 3次元CG 課題2:まとめ 問. 以下に示す三角形の単位法線ベクトルを求めよ (20,30,25) 単 位法 線ベク ト ル Z ( 1 0 , 1 0 ,1 0 ) Y X (20,10,20) 3. 3次元CG 課題3:まとめ 問. 次の文の空欄を埋めよ 3次元形状をコンピュータ内で表現するモデルを(1)という。これら には大きく分けてワイヤーフレーム、サーフェイス、(2)の三つに大 別できる。また、(2)はさらに (3),(4),(5)に大別できる。 このうち、(6)はサーフェイスモデルに面の内外情報を持たせた手 法で、そのデータ構造には(7)が用いられている。このデータ構造 の正当性を判定するための式としては (8) が用いられる。また、 (9) は数式で表現できる基本形状を和・差・積の演算により組み合 わせて形状をつくる方法である。 (10) は、形状を小さな直方体(Voxel)で表現する手法で、医療に 用いられる手法であるが、近年工業界にも適用する動きがある。 22
© Copyright 2024 Paperzz