【集中講座】Rhino: 有機的な形状作成 – SubDの使い方について

  • Rhinoで有機的な形状を作成したい人向け
  • より直感的なモデリングの実現
  • Rhino7新機能
  • メッシュベースの新しいジオメトリ
  • Nurbsサーフェスやメッシュとの高い互換性
  • UVを意識せずに従来のコマンド手法に沿ったモデリングが可能

このページはRhino7から搭載された有機的な形状を作成できる SubD についての内容が書かれています。従来のNurbsサーフェスとは異なったモデリング手法が可能なSubDについて確認してみます。


1.SubDとは何か

SubDはメッシュをベースとして、有機的な形状を作成します。それにより、サーフェスだと意識することになるU方向やV方向(サーフェスは縦糸や横糸で編まれた布のようなもの)を意識せずに、形状を作成できます。またサーフェスモデリング時に設定する連続性も、SubDであれば特に指定しなくても滑らかに繋がります。 下記はSubDで作ったパイプの一部を選択して、[Rotate]コマンドで回転した例です。

2.SubDを作成する方法 

SubDを作成する方法は複数あり、SubDの基本形状から、曲線から、メッシュから、[QuadRemesh]コマンドから、などがあります。順に確認してみます。

SubDの基本形状から

SubDの球を作る[SubDSphere]や円柱を作る[SubDCylinder]、一枚ずつメッシュを作成する[3DFace]も出力をSubDにするオプションなどが付きました。

曲線から

[SubDSweep1]や[SubDSweep2]、[SubDLoft]といったコマンドが追加され、従来のスィープやロフトの手順でSubDを作成できます。曲線を押し出す[ExtrudeCrv]にも出力をSubDにするオプションが付きました。また曲線を[SubDフレンドリー]状態の曲線にしておくことで、作成されるSubDが曲線と誤差がなく作成されます。

メッシュから

[ToSubD]コマンドを使うことで、メッシュデータをSubDに変換することができます。

[QuadRemesh]コマンドから

Rhino7から搭載された4角形メッシュで形状を再作成する[QuadRemesh]コマンドのオプションで、SubDを作成することもできます。オプションで、任意のワールド軸に対称なSubDにすることもできます。

3.SubDの構成要素を選択する方法

Rhinoでは左クリックでオブジェクトを通常選択、Shift + Ctrl キーを押しながら左クリックすることでサブジオメトリ選択ができます。SubD内の点やエッジ、フェイスを選択するときは、サブジオメトリ選択で取得できます。

SubDの頂点、エッジ、フェイスをサブジオメトリ選択でダブルクリックすることで、チェーン選択のような働きもできます。ただし頂点とフェイスに関しては、選択する向きを指定するため、隣の点やフェイスをダブルクリックすることになります。

またチェーン選択する始めと終わりを指定しておくことで、中間個所のみチェーン選択することもできます。

またモデリングを進めていく際に、サブジオメトリ選択するために毎回Shift + Ctrlを押すのが大変な時は、SubDツールバー内のコマンドを使うことで、SubDのエッジやフェイス、点だけに選択を限定できます。

また画面下にある[フィルタ]をクリック後に現れる[選択フィルタ]ダイアログ内の[サブオブジェクト]にチェックを入れることでも、同様のことができます。
ただし[選択フィルタ]で特定のジオメトリのみチェックしている時、通常の選択が出来なくなってしまうので、作業後は[選択フィルタ]を通常の状態に戻した方が良いかと思われます。

また選択した領域を、[名前の付いた選択セット]パネルに保存しておき、後から呼び出して編集することもできます。

4.SubDを修正する方法

ガムボールを使って、移動・回転・スケールし形状を修正することができます。面を移動する際、矢印の中にある〇部分をドラッグすることで、移動ではなく面を押し出すこともできます。
また頂点やエッジ、フェイスを、Delキーで削除することもできます。

変形ツールバーのコマンド群を使って、変形することも可能です。下記は、曲線と曲線の関係性を見て形状を変形するFlow変形や、渦のように回転するマエストラム変形を行った例です。

下記は[CageEdit]コマンドを使って、SubDオブジェクトの全体形状を大まかに変更した例です。

下記はサーフェス間の関係を見て変形するFlowAlongSrf変形を、Rhinoのヒストリ機能と併せて使用している例です。

5.SubDからNurbsサーフェスに変換する方法

[ToNurbs]コマンドを使うことで、Nurbsサーフェスに変換することができます。変換する際、SubDと同じ位置に作成されます。また元のSubDに隙間がなければ、変換後も[ShowEdge]コマンドでオープンエッジを確認しても隙間がない、ソリッド状態で変換することができます。

6.SubDを扱う上での注意点 

SubDやポリサーフェスなどとブール演算を行うと、SubDからサーフェスに一度変換し、その後にブール演算した結果が出力されます。ですので基本形状面はSubDで作成しておき、精度が必要なブール演算などの処理は基本形状作成後に行うなど、作業工程を分ける方がデータ作成上問題が少ないかもしれません。

SubDの表示を[SubDDisplayToggle]コマンドなどで、スムーズではなくフラットにしているとSubDが有機的に表現されず、メッシュのように直線的に表示されます。[SubDDisplayToggle]で表示を切り替えることができますので、意図せずフラットにしてしまった場合は、戻していただけたらと思います。


補足.GrasshopperでSubDを扱った例

作成したメッシュを[SubD from Mesh]コンポーネントに繋ぐことで、SubDにすることができます。また作成したSubDを[Brep]コンポーネント(Rhinoで言うポリサーフェスにあたるもの)に接続することで、Nurbsサーフェスに変換することもできます。どちらも右クリックからBakeすることでRhinoで扱うことができます。

下記の例は、円を三つ配置して、それぞれZ方向の高さ、半径、円の分割数、繋ぐ箇所、SubDの厚みなどを任意にGrasshopperで修正できるようにした例です。

メッシュの窓のような外周部を取り出すのに、McNeelが別途メッシュを扱うために作成した[Weaverbird]というプラグインを使用していますが、考え方としてはメッシュを作成後に[SubD from Mesh]に繋いでいただければSubDが作成できます。是非、GrasshopperでSubDに挑戦してみてください。

※クリックで大きい画像がご覧いただけます。