Rhinocerosのブール演算の失敗


Rhinocerosでブーリアン演算で「演算に失敗しました」とメッセージが出て終わってしまう時があります。その原因がなんとなくわかったので、ちょっと解説します。
上図の様な螺旋の溝がある円柱を作るとします。まずはその作業手順を紹介します。螺旋の溝になる断面図と円柱の元になる円を作成します。

次にスパイラルまたはヘリカルで螺旋を作成します。

次にワンレールスイープで螺旋をレール、半円を断面図としてコイル状の図形を作成します。このときにダイアログで「ロードライクTOP」とか「ロードライクRight」とかを選んで適切なコイルが作られる様にします。

capコマンドで端を閉じておきます。

次に円柱を作成します。この円柱のサイズは作成したコイルと同じ直径になっています。

ここからが本題。ブーリアン演算を行い、溝を作成します。円柱からコイルの部分を引き算する演算です。失敗します。

この失敗の原因は円柱の面上に線やコントロールポイントがあるためです。編集点表示をオンにして編集します。

上部の線を移動させて途中のコントロールポイントも微妙に円柱の面上からずらしています。これで再び1レールスイープでコイルを作りcapします。

これで差のブール演算を実行します。はい!あっさりと計算できました。

途中でも書きましたが、演算しようとする面上に面が重なっていたり、コントロールポイントがあるとブール演算は失敗するようです。ちょっとずらしてあげると良い様です。

環境はWin7で
バージョン 5 SR12 64-bit (5.12.50810.13095, 2015/08/10)
でした。