FreeCADで3Dソリッドを切断する方法

市販の3D-CADには当たり前に出来そうな機能(たとえば、AutoCADに関するこちらの記事)ですが、何故かFreeCADには存在しないようです。色々調べたのですが、否定的な記事(たとえば、こちらの記事)しか見つかりませんでした。

だからといって、これが本当に出来ないとなると、仕事では使えない!となってしまいます。実は最近受注した仕事の中で、どうしてもこの機能を使う必要がありました。そこでよーく考えれば、余分な手間はかかるけど所望の機能(切断)は実現できるはずという方法はいくつか思いついたので、色々試してみることとなり、まぁこれがベストかなという方法も見つかったので以下に記しておきます。

範囲を選択_127

切断平面を作成し、(これで「切断ボタン」があれば良いのだが無いので)これを法線方向へ押し出してブロックを作成、元のソリッドとのブーリアン演算するというものです。一見したところ単純に一手間増えただけのようで、何でこんな簡単な方法が公知でなかったのか・・・実は、切断平面を作成する際の注意点があって、これを間違えると、上の図のような押し出しが出来てくれないからでした。

直線の作成

範囲を選択_128(Partワークベンチ)⇒範囲を選択_132(パラメトリックな幾何プリミティブを作成)

範囲を選択_130

エッジから平面を作成

範囲を選択_128(Partワークベンチ)⇒範囲を選択_129(高度な図形作成ユーティリティ)

範囲を選択_134

手順は上の図に示しているが、ここで注意が必要なのは、範囲を選択_135の平面にチェックマークを付加しておくことと、範囲を選択_136でのエッジ選択方法です。これ(とくに後者)を間違えなければ、以下の手順(押し出し)がすんなりうまくいきますが、間違えるとどうなるかは後述します。

切断平面の押し出し

範囲を選択_128(Partワークベンチ)⇒範囲を選択_137(押し出しツール)

範囲を選択_143

作成した切断面を選択して、法線方向押出しで、上図のようになってくれれば、意図した通りの結果ですが、

失敗例1

範囲を選択_140

法線方向の押し出しが出来てくれません。これは、切断面を作成する際に、範囲を選択_135の平面にチェックマークを付加していない場合にこうなります。もっとも上図の場合には、こういう押し出し形状であったとしても、題意の切断面は作成可能ですがね。

失敗例2

範囲を選択_141

この場合は、法線方向の押し出しにはなっているのですが、押出方向が反対で、これでは次のブーリアン演算しても意図した切断面が得られません。

実は、この解決策を探すことに一番苦労しました。それが範囲を選択_136のエッジ選択方法です。結論は、正しい選択方法は1発では見つかりません。

確率的には、2回に1回はうまくいくはずです。3つの直線を順番に選択するんですが、失敗したら、出来たもの(Extrudeオブジェクト)を削除(Deleteキーを押す)し、さらに作成した切断面(Face)を削除して、切断面を作り直します。この時に失敗した時とは違う方法で選択し直せばうまくはずという・・・まぁ、このへんで妥協して使ってやるしかなさそうです。

単純に右回り/左回りということでなく、最初にどの直線を選択するかにも依存するので、とにかく3つの直線の選択順序をちゃんと覚えておくことが重要です。最初に選択する直線を同じにして、右回り/左回りを切り換えれば多分うまくいくはずです。

 

 

ブーリアン演算

は説明するまでないと思いますが、念の為以下に手順を図示しておきます。

範囲を選択_128(Partワークベンチ)⇒範囲を選択_145(ブーリアン演算ツール)

範囲を選択_146

 

 

 

終わりに

本記事を作成するにあたり、改めて公開情報を調べ直したところ、否定的な記事のあったサイトの別のページで、類似の代替方法も見つかりました。ご参考までの紹介ですが、ブーリアン演算するところは一緒ですが、対象のExtrudeオブジェクトを作る方法が異なっています。ここで紹介した方法が直感的で判りやすいとは思いますが、一発で確実に決められないところが難で、どちらでやるかはお好み次第でしょうか。

なお、一発で確実に決める方法なり、押出方向を逆にする方法なり、ご存知の方は是非ご一報のほど。

 

追記(2015/6/15)

早速FBのページにてアドバイスを頂きました。

範囲を選択_152

 

切断平面上でスケッチを作成し、これを押し出すというものです。もう一手間増えるのと、ワークベンチの切り替えが必要になりますが、スケッチは適当な大きさで作成すればよく、切断面が凹んだ物体でも対応可能。切断方向を任意に切り替えらえることも出来るので、まさしく切断ツールとなりますね。

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください