出土資料や民具資料のなかで情報が限定された図面のみから,その3D形状を推察することが必要となるケースがあります。ここでは,Windows標準のSnipping toolとフリーソフトであるInkscape,FreeCADを用いて簡易的な3Dソリッドモデル作成のプロセスを記録しておきます。

この画像は側面と上面の2方向からの図面から簡易的に3D化したものです。FreeCAD0.20.2からキャプチャしました。
ドキュメントからSVGへ
まずは,Snipping Toolで必要な画像をキャプチャし,JPEGデータとして保存しました。そのJPEGファイルをInkscapにインポートし,下図のように

財団法人東大阪市文化財協会 1987 『鬼虎川の木質遺物-第7次発掘調査報告書第4冊-』より
パス>ビットマップのトレース,そして,上図右カラムの検出モードを「明るさの境界」として,同カラムの下の「適用」を押しますと,元図の上にトレースした新しいドローイングが作成されます。この新しい方のみを残して,元図を消し,再度,この新しいデータをクリックしますと,下図のようにパスが定義されていることが分かります。

このデータをファイル形式SVGで書き出します。SVGデータは,点と線の情報をもっていますので,CADとの相性も良く,ここで定義される線が自己交差することなく,一筆書きに連続し,多角形状においてしっかり閉じた線となっていれば,面が定義されます。閉じていない場合は面になりませんので,FreeCADにもって行った際に,FreeCADのPartでの掃引でうまくソリッド化することは困難です。実際,上記のケースも,Inkscapeの段階で閉じた多角形としてトレースを完了させるか,閉じないままでFreeCADに送るかは,作業効率の上でどちらが得策かは,まだ見えていない状態です。今回は,Inkscapeではデフォルト状態でのトレース→SVGのみでスルーし,FreeCADの方で最終的にスプライン曲線での再トレースを行いました。一見,非効率に見えるかとは思いますが,3Dソリッド化後の機構および構造解析においての不具合の可能性を極力低減させるには,できるだけ多くのことはFreeCADで済ましておいた方が後々泣かなくて済むことも経験上学んでいます:-)
参考までに,InkscapeでのSVGの書き出しは,パス>ビットマップのトレースでの右カラムの下からでもできるようですが,なんだか良く分からないのですが,自分の環境では,素直に,ファイル>名前を付けて保存,SVG形式を選択が無難なようです。
それから,これも自分環境のせいなのかもしれませんが,FreeCADにSVGを読み込むまでは,フォルダ名もファイル名も英数表記のみの方が問題が少ないようです。これも参考まで。
SVGファイルをFreeCADへ,そして3D化
SVGを持っていく
これは至ってシンプルです。むしろ,どのワークベンチのどのアイテムでインポートすれば良いのだろうかと悩むことなく,新規を立ち上げ,エクスプローラからSVGファイルを掴んで持っていくだけで,以下の画面が出て来ます。デフォルトでx-y平面に埋め込まれます。

FreeCAD上で手を放し,SVGを落としますと,上図のウィンドウが開きますので,迷わず下のSVG as geometryを選んでください。そうすると,エラーなく

埋め込まれます。
B-スプライン曲線でトレースする @Sketcher
FreeCADのワークベンチ:SketcherでObjectにアタッチすることなく,素直に「xy平面」を選び,B-スプライン曲線でトレースし始めます。


そうすると,意外と簡単に閉曲線ができますので,ターゲットの形状の基本特徴を支配するパーツごとに閉曲線を作成します。
押し出しとブーリアン演算で簡易3Dモデルを得る@Part
FreeCADのワークベンチをPartに移動し,上記で作成した閉曲線を「押し出し(掃引)」します。今回は側面図と上面図を同じ平面でトレースしていますので,上面図からトレースし掃引したソリッドデータ(黄色)は掃引後に長軸にそって90度回転させてあります。同様に,側面図から橙色のソリッドを掃引し,二つの掃引ソリッドを交差させています。

ここまで来ると,あとは引き算のみですが,時折りうまくいかないこともあるので,その際は多少無駄に思えるかもしれませんが,はじめからやり直した方が早いケースもあります。もう少し知的な方法を探ろうとはしていますが,だいたい問題が起きる時は,目では見えないほどの自己交差やねじれであったりするので,経験からすると,程よいところで仕切り直しをすることが早いこともあります。今回は有り難いことに問題なくここまで来ています。



コメントを残す