2011/09/02

NextEngineを使ってみよう その1の2

台風遅いですね。。。
晴れ間まで見えますが、ほんとに近づいているのでしょうか。(゚ー゚*?)

さて、今日は NextEngine をつかってみよう プロジェクトの その1の2 です!
その1の1ではカップをスキャンしたところまで行いました。
今回はその続きということで RapidWorks でデータ処理から始めましょう。

NextEngine でスキャンしたデータを RapidWorks に取り込んだ状態がこちら。

RapidWorks はスキャンしたデータを綺麗にしたり、
そこから CAD へ渡すデータを作成したりするソフトウェアです。

画面の左下にずらりと縦にならんでいる文字列がありますが、
これがスキャンしたショットたちのリストです。
画面中央の作業スペースを見ると、各ショットがばらばらに置かれていますね。
まずはこれらの配置を正しく並べ替えてあげる必要があります。
座標合わせ機能を使って座標を合わせた結果がこちら。

綺麗に揃いました。

ショットの位置を揃える場合、

  • 各ショットに特徴的な形状(角とか、穴とか)がある
  • ショット同士が少しずつ特徴的な形状で重なっている
という条件に一致するほど簡単に合わせることができます。
AutoDrive を使って撮影された1回分のショットであれば ScanStudio で自動的に合わせてくれますが、
今回のように何回も撮影する場合はこのことを考えてスキャンしましょう。

また、テクスチャ付きのショットの場合、処理時間とデータ量を軽減するため
テクスチャから頂点カラーへ変換しておく、ということも大事です。

テクスチャは画像データですので、どうしても解像度に依存してデータ量が肥大しますし、
形状を修正するとテクスチャのマッピング情報が書き換えられるので時間もかかります。
これを頂点カラーにする、というのはテクスチャの色を形状に焼き付けて
ポリゴンの各頂点に色情報を持たせる、ということです。

何やら色んな単語が出てきて難しくなってきましたが、(^_^;)
実際に行うのは RapidWorks 内の ツール>テクスチャツール>カラーへ変換 コマンドを実行するだけです。
(残念ながら現在1ショットずつしか実行できないので、ショット分実行する必要があります、、、)


さて、話が少々ズレましたが、各ショットの座標が合ったら今度はこれを一体化します。

カラーは非表示にしました。
スキャンが足りなかった箇所に穴が開いてます(赤茶色に見える箇所)が、
綺麗にひとつになりました。

よく見てみると、外側の滑らかな表面に対して、内側に細かな凹凸が出来てますね。
カップは木彫りで表面加工はされていないのですが、内側だけニスが塗られていました。
そのため内側をスキャンする時にレーザーを反射してノイズが出てしまったようです。
こういうときは内側に粉をはたくなど事前処理をしてからスキャンするとノイズを防ぐことができます。

今回このノイズは RapidWorks でスムージングをかけて消してしまいます。
ついでに穴も塞いで、最適化も行っておきます。

使ったコマンド
ツール>メッシュツール>不正データ修正 : 交差したポリゴンなどの自動修正
ツール>メッシュツール>グローバルリメッシュ : ポリゴンの均等化
ツール>メッシュツール>スムーズ : スムージング
ツール>メッシュツール>エンハンス : スムージングと特徴の強調
ツール>メッシュツール>穴埋め : 穴埋め
ツール>メッシュツール>リラップ : 全体を包括するメッシュに再構成


これで形状は完成。
次のステップはこのデータをCGソフトへ渡して処理します。

と、その前に。
このデータのポリゴン(データを構成する要素)数を減らしましょう。

スキャンしたデータはほとんどの場合は必要以上のデータ量ができますが
CGソフトへ持っていくには重すぎますし、処理時間も相当かかってしまいます。
ここでは間引きコマンドを使って1/10までポリゴン数を減らしました。




このデータをOBJフォーマットで出力したら、次回はいよいよ仕上げ!

その1の3 へつづく


サーフェース・ソリッド化
今回はポリゴンのまま出力しますが、CADソフトなどへサーフェースやソリッドデータとして渡したい場合、
このポリゴンから自動曲面作成コマンドを使ってサーフェース・ソリッド化することができます。