*方向場による再メッシュ(Instant Meshes) [#kfb39c21]

オープンソースの[[Instant Meshes:http://igl.ethz.ch/projects/instant-meshes/]]を使用すると、表面メッシュを再メッシュし、滑らかな三角形メッシュや四角形メッシュに変換することができます。

Instant Meshsは、方向場(Orientation field)と位置場(Position field)という概念を使用して再メッシュを行います。

ここで、方向場とは、最終的なメッシュのエッジが沿うベクトル場のことです。

**ファイルの読み込み [#ffc560e2]

Instant Meshesを起動し、「Open mesh」から表面メッシュファイル(*.ply, *.obj)ファイルを読み込みます。

-Advanced > Render layers > Input mesh wireframe

にチェックを入れると、入力表面メッシュを確認することができます。

#ref(input_moai.png,center,nowrap,60%,入力表面メッシュ);

**再メッシュの設定 [#u29ae6fc]

「Remesh as」で再メッシュ後のメッシュタイプを選択します。
- Triangles (6-RoSy, 6-Posy): 三角形メッシュ
- Quads (2-RoSy, 4-Posy): 四角形メッシュ
- Quads (4-RoSy, 4-Posy): 四角形メッシュ

「Configuration details」で詳細設定を行います。
-Extrinsic: 形状の特徴線に沿うようにスムージング
-Align to boundaries: 入力メッシュが閉じていない場合は、境界線を保存する
-Sharp creases: 入力表面メッシュの法線が不連続な場合は、スムージングしない

#ref(configuration.png,center,nowrap,60%,設定);

ここで、$s_o$-RoSyは角度-回転対称性($\frac{2\pi}{s_o}$-Rotational Symmetry)を意味し、以下のような方向場の種類に対応します。
- 2-RoSy:接ベクトル場(tangent vector field)
- 4-RoSy:交差場(cross field)
- 6-RoSy:6角方向場(hex-directional field)

**方向場(Orientation field)の計算 [#je079891]

方向場の計算をします。

-Orientation field > Solve

方向場を計算すると、方向場を表す帯が表示され、特異点(singularities)の数が計算されます。

#ref(solve_orientation_field.png,center,nowrap,60%,方向場の計算);

※Toolsのくしアイコンを使用すると、方向場を調整することができます。稜線を出したい場合などに使用します。

**位置場(Position field)の計算 [#k72d58ef]

-Position field > Solve

位置場を計算すると、位置場に基づいて計算された三角形の概形が表示されます。

#ref(solve_position_field.png,center,nowrap,60%,位置場の計算);

※Toolsのブラシアイコンを使用すると、位置場を調整することができます。稜線を出したい場合などに使用します。

**再メッシュ [#t57baef8]

-Export mesh > Actions > Extract mesh

で再メッシュされたメッシュを確認します。

メッシュが滑らかでない場合は

-Smoothing iteration

でスムージング回数を設定します。

下記は、三角形(6-RoSy)で再メッシュした結果です。
下記は、三角形(6-RoSy, 6-Posy)で再メッシュした結果です。

#ref(extract_mesh.png,center,nowrap,60%,三角形で再メッシュ);

また、四角形で再メッシュした場合は下記となります。
また、四角形(4-RoSy, 4-Posy)で再メッシュした場合は下記となります。

#ref(quad_4_4.png,center,nowrap,60%,四角形で再メッシュ);

上記は、三角形が混ざっていますが

-Export mesh > Mesh settings > Pure quad mesh

にチェックを入れると、全て四角形となります。(内部的には、Catmull-Clark法による再分割をおこなっています。)

#ref(pure_quads.png,center,nowrap,60%,全て四角形);

最後に、再メッシュされたメッシュファイルを

-Export Mesh > Actions > Save

から出力します。

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS