工業製品をモデリングする際、対称な形状を作成することが多くあります。このページでは、形状を対称にモデリングするための方法について幾つかご紹介したいと思います。
NURBSとSubDのそれぞれで、モデリング作業の効率化に繋がると思いますので、興味のある方はぜひご確認ください。
NURBS曲線・曲面での対称
NURBSの曲線やサーフェスを軸に対称にコピーするには、[Mirror]コマンドや[Symmetry]コマンドを使用できます。
[Mirror]コマンド


まず[Mirror]コマンドは、指定した軸に対してオブジェクトを線対称にコピーするコマンドです。曲線で使用してみた手順は下記となります。
- [Mirror]コマンドを実行。
- [ミラーするオブジェクトを選択]でオブジェクトを選択し、Enterキーで決定。
- [対称軸(ミラー平面)の始点]で軸の始点をクリック。
- [対称軸(ミラー平面)の終点]で軸の終点をクリック。
です。

ただし[Mirror]コマンドはオブジェクトを単純に線対称にコピーするだけなので、コピーされた曲線が滑らかに繋がらない場合があります。滑らかに接続したい時は、制御点の位置を手動で調整する必要があります。

具体的にはコピー元の曲線の端点と、その端点から2つ目の制御点を結んだ線上に、コピー先の曲線の2つ目の制御点が位置するように調整すると、曲線同士がG1連続(接線連続)となり滑らかに曲線同士が繋がります。
この例では対称とする軸が垂直なので、端点と曲線の2つ目の制御点が水平に並んでいる必要があります。
[Symmetry]コマンド
上記のような対応を形状を修正するたびに行うのは手間がかかります。そのような場合は、[Symmetry]コマンドを使用することで、連続した対称なコピーを作成できます。曲線に使用した手順は以下の通りです。

- [Symmetry]コマンドを実行。
- オプションの[連続性]をスムーズに設定し、[対称の中心となる曲線またはサーフェスのエッジを選択]で曲線の対象としたい箇所付近をクリック。
- [左右対称平面の始点]で始点をクリック。
- [左右対称平面の終点]で終点をクリック。
上記手順で、制御点の位置を修正しつつミラーリングを行うことができます。

ただし、[Symmetry]コマンドを使用しても、コマンド実行後にオブジェクトを移動させると、連続した状態が解除されてしまいます。そういった時は[Symmetry]コマンド実行前に[ヒストリを記録]を有効にしておくことで、片側の形状を編集した際にも、コピーした側の形状も自動的に更新され、連続性を保つことができます。

また曲線ではなく、サーフェスの場合も対称としたいサーフェスエッジを選択することで、同様に対称に形状をコピーすることができます。また併せて[ヒストリを記録]を使用することもできます。
その場合は、連続性が取れなくなる2つ目の制御点のみ移動する動作は行うことができなくなります(一番端の制御点、一番端の制御点と同時に移動するのは可能)。
SubDでの対称モデリング
SubDオブジェクトの対称モデリングに[Mirror]コマンドを使用することもできます。ただし、[Mirror]よりも機能が多いSubD専用の対称モデリングを行う[Reflect]コマンドをご紹介したいと思います。
SubDの一般的な操作方法については、下記リンクを参照ください。
https://www.applicraft.com/tips/rhinoceros/subd-01/
[Reflect]コマンド
[Reflect]コマンドは指定した面を基準として、SubDを面対称にコピーするコマンドです。使用手順は以下の通りです。

- [Reflect]コマンドを実行する。
- [反転するSubDを選択]でSubDをクリックして選択する。
- [反転面の開始位置]で開始位置をクリック。
- [反転面の終了位置]で終了位置をクリック。
- [反転の元になる側を変更]で、反転元となる側となるように[反転]オプションで調整しEnterキーで決定。
です。
[Reflect]コマンドで作成された対称にコピーされた側は、元のオブジェクトよりも少し濃いグレー色で表示され、反転面の位置には赤い線が表示されます。コピーされた側も元のオブジェクトと同様に選択して修正ができます。

また、対称面として設定した面を超えて移動すると、新たに形状が滑らかに接続されます。
[Reflect]コマンドによる対称状態を解除するには、[RemoveSymmetry]コマンドを使用します。

[Reflect]コマンドを2回実行することで、X軸に対称にした後に、さらにY軸に対称にするという編集も可能です。色々な使用方ができるコマンドなので、是非試していただけたらと思います。
応用例:[Reflect]と[Radiate]の組み合わせ
[Radiate]コマンドを使用することで、指定した点を中心にSubDを放射状にコピーすることができます。
[Reflect]コマンドで対称にコピーしたSubDオブジェクトを、さらに[Radiate]コマンドで放射状にコピーすることで、複雑な対称形状を効率的に作成できます。具体的な手順は以下の通りです。

- まず基本となるSubDオブジェクトを作成します。例では30度の線に添うように作成。
- [Reflect]コマンドを実行し、先ほどと同じ手順で対称となるSubDを作成します。例ではY軸に対称。
- 次に[Radiate]コマンドを実行します。
- [対称の主セグメントになるSubDを選択]で、[Reflect]で作成したSubD全体を選択します。
- [放射セグメントの数]に希望する数値を入力します(ここでは6)。
- [放射の中心点]で、回転する中心点を選択します。
- [軸方向]で回転軸の方向をクリックします(ここでは作業平面に対して垂直)。
- 必要であれば、放射コピーの元となる側を設定します。
[Reflect]で軸に対して対称性を持たせた後に[Radiate]で放射状に配置することで、製品デザインでよく使われる放射と対称を併せた形状も簡単に作成できます。
[Reflect]、[Radiate]で作成した場合、ヒストリ機能を使わなくてもコピーされたすべてのパーツに変更が反映されます。これによりモデリング時の作業が、楽になるかと思われます。 是非、上記のようなモデリング方法を活用して、効率的にモデリングを行っていただけたらと思います。