[Grasshopper]オブジェクトをモデル上に配置する3つの方法[Orient]

オブジェクトをモデル上に配置する grasshopper

ライノセラスやグラスホッパーを使用していると、作成しているモデルの上にオブジェクトを配置したい時があると思います。

しかし、複雑なモデルや曲面の場合は難しいです。

そこで今回はGrasshopperで簡単に、また直感的にモデルの上にオブジェクトを配置する方法を解説します。

結論としてOrientというコンポーネントが重要になります。

Orientコンポーネント

Orientコンポーネント

今回はOrientを使用し、3つの配置方法を解説します。

全体のコンポーネント
画像をクリックして拡大して見る

全体のコンポーネントはこのようになります。

今回のGrasshopperとライノセラスのデータは下のリンクからダウンロードできるので是非活用してください。

今回のGrasshopperとライノセラスのデータダウンロードはこちら

ダウンロードできるデータのご利用に関しては、利用規約をご覧ください。

それでは解説していきます。


本記事では、コンポーネントはアイコン表示になっています。


3つの方法の共通部分

最初に3つの方法の共通部分について解説します。

モデルを分解

使用コンポーネント:① BrepDeconstruct Brep

Deconstruct Brepを使用

まずはBrepコンポーネントに配置したいモデルと配置されるモデルを格納してください。

そしてDeconstruct Brepを使用することで2つのオブジェクトをそれぞれ分解します。

このコンポーネントにより、サーフェス、線、点の3つに分解されます。

F端子からはサーフェス、E端子からは線、Vからは点が出力されます。

List Itemコンポーネント

使用コンポーネント:③ List Item

次にDeconstruct BrepのF、E、V端子にそれぞれList Itemを接続します。

List Itemはi端子に任意の数値を入力することで、該当するインデックス番号のデータを取り出すことができます。

今回の場合番号を変えることで順番に1つずつ点、線、サーフェスを選択できます。

点を抽出
線を抽出
サーフェスを抽出

上の3つの画像のように番号を変えることで1つのデータのみを抽出できました。

ここまでが3つの方法でどちらも使う内容です。

ここからは1つずつ3つの方法を解説します。

点上に配置する

点上に配置するコンポーネント

使用コンポーネント:④ Orient

点を抽出

点上に配置する方法です。

先程のList Itemで抽出した点を用意します。

点上に配置

そしてOrientのG端子に移動させたいモデル、A端子に移動させたいモデルの点、B端子に移動先の点を接続します。

これにより点上にモデルが移動しています。

この後説明する線をA端子に接続し組み合わせることで、頂点に線を組み合わせることもできます。

線上に配置する

線上に配置するコンポーネント

使用コンポーネント:⑤ Evaluate Curve ⑥ Orient

線を抽出

次は線上に配置する方法です。

先程のList Itemで抽出した線を用意します。

そしてEvaluate Curveに接続します。

そしてt端子に小数点で1.0を接続します。

Reparameterizeに設定

そしてC端子を右クッリクしてReparameterizeを選択してください。

これをすることにより、線の位置を先程の入力した0~1.0で指定することができます。

例えば線の長さが10mmだった場合、0.1を入力すると1mmの場所が選択できるようになります。

Evaluate Curveを使用

これにより線上で数値に対応する点を移動できるようになりました。

上の画像の場合、左のモデルは0.5、右のモデルはおそらく0.7を入力しています。

Orientを使用

そしてOrientを使用すると線上にモデルを配置できます。

数値を変更

数値を変更することで、このように3角錐に入り込んだり位置を変更できます。

サーフェス上に配置する

サーフェス上に配置するコンポーネント

使用コンポーネント:⑦ AreaMD SliderEvaluate Surface ⑩ Orient

Areaを使用

最後にサーフェス上に配置する方法を解説します。

先程のList Itemで抽出したサーフェスを用意します。

移動させたいモデルにAreaを使用します。

これにより、C端子からサーフェスの中心点を取得することができます。

Evaluate Surfaceを使用

次に配置されるサーフェスにEvaluate Surfaceを使用します。

このコンポーネントはサーフェス上に適した平面の作成、選択する位置の変更をするのに役立ちます。

Reparameterizeに設定

こちらも線上に配置する方法同様にS端子を右クッリクしてReparameterizeを選択してください。

そしてMD Sliderを使用することで2方向の最大値が1.0のグラフを作成することができます。

Evaluate Surfaceの結果

デフォルトの状態だとこのようにサーフェスの中心にモデルを配置することができます。

MD Sliderの位置変更

MD Sliderの値を変更することでサーフェス上の様々な場所に移動できます。

MD Sliderで上に移動

このように上の方にも移動できています。

球上に配置

球上のような曲面にも配置することができます。

複雑なサーフェスに配置

このような複雑な曲面にも配置することができ、様々な形態に対応することができます。

まとめ

オブジェクトをモデル上に配置する

まとめです。

Grasshopperでモデルの上にオブジェクトを配置するには

Orientコンポーネントを使用する

です。

今回は以上になります。