3Dプリンターの高性能化、低価格化が進み、活用の幅も大きく広がっています。そこで、今回は、教育やプレゼンテーション、解析結果の認識などでの利用を目的に、AVS/Express上で可視化した結果を3Dプリントしてみました。
AVS/Express上で可視化した結果を 3D プリンタを利用して造形するには、いくつかの手順が必要です。
まず、等値面やメッシュによる可視化結果を STL や PLY 形状フォーマットに出力します。データによっては、隙間や穴埋め、また、面の表裏の反転、微小ポリゴンの削除なども必要です。
今回は、AVS/Express の出力結果に対して、ポリゴン編集ツールにPOLYGONALmeisterを使用し、その編集後、3Dプリントを行ってみました。
以下のソフトウェアとサービスを利用しています。
*1) 次期バージョンでサポート予定の Write PLY モジュールを利用
AVS/Express 保守ユーザーで、8.4 のリリース前に試してみたい方は、
サポート窓口までお問い合わせください。
*2) 日本ユニシス・エクセリューションズ株式会社で開発、販売されている
ポリゴン編集ツール
http://www.excel.co.jp/polygon/
*3) http://make.dmm.com/
今回は2つのデータを利用して試してみました。
① 国土地理院 5m 標高メッシュデータまず、富士山周辺の 5m 標高メッシュに対して、高さ方向に凹凸をつけて表現した3次元データを利用しました。 下図に示すように、5m メッシュは全国すべてに対応していないため、一部欠落部分があります。 今回は POLYGONALmeister のポリゴン編集機能を評価するために、あえて、欠落データのまま利用しています。 (10m 標高では欠落はありません)
2つ目のデータは、衝突解析結果の中からタイヤ部分のみを抽出したデータです。 こちらも、本来は車全体をプリントしたいのですが、このデータは部品が膨大で、また、ほとんどが シェル要素で厚みがないため、もともと3Dプリントには向いていません。 そこで、今回は、評価体験用に、一部分だけを抜き出してみました。
まず、AVS/Express で可視化した結果を形状データとしてファイルに保存します。 面データを形状に保存するには、Write_STL モジュールやWrite_PLY モジュール(次期バージョン 8.4で サポート予定)を利用します。
下図の例では、地図オプションで作成した標高データ(を一時的に HDF5ファイルに保存したもの)に対して、 surf_plotモジュールで凹凸をつけています。また、直接標高データをそのまま接続することで底面を作成して います。その2つをマージし、Write_STLモジュールを使って、STLファイルに出力します。
また、次の図は、タイヤ部分を抽出し、保存した際のネットワークです。 crop_orthobox モジュールで車全体からタイヤ部分を抽出しています。 また、external_faces モジュールで外形面を作成し、先の例と同様に Write_STL モジュールで出力しています。
※ 頂点の色を出力するには、8.4でサポート予定の Write_PLY モジュールを利用します。 要素の色についても 8.4 の Write_STLモジュールでサポート予定です。
作成したSTLやPLYファイルをPOLYGONALmeisterを使って、編集します。
POLYGONALmeisterでは、エッジの自動認識や穴の自動認識が行われます。
以下の図に、1つ目の富士山データを表示した例を示します。
残念ながら、図中のコメントに記すように、このデータでは、欠落部が面でつながっているため、その部分は
エッジとして認識されません(エッジではないのであたり前ですが)。
POLYGONALmeister にはデフィーチャーというある領域を囲んで、周囲から面を延長して穴埋めする機能も
あるのですが、この例では、角の部分がつながっているため埋めることができず、断念しました。
そこで、エッジとして認識させるために、予め AVS/Express 上で欠落部の面のつながりを削除したデータを 作成しました(AVS/Express 上で null 値指定と thresh_null モジュールを使って削除)。
欠落部を削除したら、すべてがエッジとして認識されるため、そのエッジをマウスで選択しながら、穴埋めを行うことができます。 例えば、部分穴埋め機能を使うと、端点を選ぶことで、そこからつながった部分を穴埋めできます。 例えば、下図のコの字部分の端点の2点を選択すると、緑部分が穴埋め対象となり、ここに面を生成できます。
その他、橋掛け穴埋め機能では、点と点やエッジとエッジを選ぶことで、その間に橋を掛けることができます。 下図では、富士山頂上周辺の2つのエッジを選んで、橋をかけた様子を示しています。 図中のコメントに示すように、いくつか橋を掛けながら、穴埋め(自動で穴埋め可能)することで、図右下のように、上面の穴をすべて埋めることができました。
最終的に完成した富士山を以下に示します。
作業時間は初めて操作した初心者でも、約1時間半程度でした。メニューが直感的なため、マニュアルを見ずに作業できます。
以下、作業環境に関する情報です。
同様に、タイヤ部品についても穴埋め作業を行ってみました。 まずは、抽出した際に出た余分な部分を削除します。それぞれシェルとして認識されているため、画面上でピックしながら削除できます。 また、穴埋めについても、ホィールの並んだ穴などは自動検出され、一括で穴埋め可能です。
その他、デフィーチャーという機能を利用すると、下図のような穴埋めも可能です。
ほとんどの穴を埋めることはできましたが、以下の隙間だけは残念ながら埋めることができませんでした。 先の富士山の1つ目のデータと同様、エッジではないため、橋掛けなども利用できません。 例えば、カットなどを行い、エッジとして認識させるなどの工夫をすれば埋めることができそうでしたが、今回は行いませんでした。
このデータは面の表裏や微小ポリゴンの重なりなども含まれていたため、クリーニングも行いました。 POLYGONALmeisterには、表裏、折りたたみ、重なりなどを自動検出、修正するクリーニング機能もあります。 最終的に作成したタイヤを以下に示します。
修正したデータをSTLに保存し、実際に 3D プリントサービスを使って、成型してみました。
残念ながら、POLYGONALmeister では、色情報を扱うことができません。
そこで、今回は、AVS/Express に再度データを戻し、色づけしました。
具体的には、AVS/Express の scatter_to_unif モジュールで、元データからメッシュデータの各頂点に色を補間します。次に、interp_data モジュールを使い、そのメッシュデータの頂点から修正後の形状に色づけしました。
その他、最後に coordinate_math モジュールで大きさを調整し、PLY ファイルに再度、保存しました。
この保存したファイルを今回は DMM.com の 3D プリントサービスを使って、Webページからデータをアップロード、プリント注文しました。 約1週間から10日くらいで、プリントできます。金額は材料(樹脂のタイプなど)と大きさ(量)によって決まるようで、富士山の例では、3cm ~ 4cm くらいの大きさの石膏フルカラーで 約1800円でした。(下図のタイヤはナイロン樹脂を利用で1200円くらい)
AVS/Expressで可視化した可視化結果を POLYGONALmeisterポリゴン編集ツールで編集し、3Dプリントを行ってみました。 POLYGONALmeisterについては、まず、使い方が簡単です。また、ある程度大きなデータでも、ストレス少なく操作できます。例えば、富士山データは某フリーソフトではすぐにクラッシュし、操作できませんでした。 残念な点としては、大きさの調整(座標の変換)、シェルの厚み付けなどの機能がありませんでした。ただ、これらの機能は、今後のバージョンアップで強化が検討されているとのことです。 また、本文中に述べたエッジ以外の隙間の穴埋めや色情報の扱いなどについても、更なるバージョンアップに期待したいと思います。 その他、同ソフトには、今回紹介しなかったリダクションやスムージング、リメッシュなどの機能もあります。 ポリゴン編集ツールをお探しの方は試してみられてはいかがでしょうか?
※ POLYGONALmeister について
http://www.excel.co.jp/polygon/
※ 本評価は、VCADシステム研究会 ポリゴンエンジニアリング分科会の活動の一環として行ったものです。
http://www.vcadcc.jp/activity_sub.html