[Grasshopper]複数の点から線、サーフェスを作成する方法を5つ解説

grasshopperで点から線とサーフェスを作成 grasshopper

Grasshopperで点から線、または曲面のサーフェスを作成したいという場合は多いことでしょう。

しかし、どのようにグラスホッパーで作成するのか分からないこともあると思います。

そこで今回は点から線を作る方法3つ、サーフェスを作る方法2つの合計5つの方法を解説します。

結論としてInterpolate、Nurbs Curve、PolyLine、Surface from Points、Patchの5つのコンポーネントを使用します。

点から線、サーフェスを作成する5つのコンポーネント

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

それでは解説を始めていきます。

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

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

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

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

アイコン表示に変えたい場合、以下のリンク先の記事を参考にしてください。

点群から線を作成する方法

線を作成する際の注意点

線の作成を説明する前に注意しなければならないことについて説明します。

それは、Grasshopperでライノセラス上の複数の点を選択する場合の順番に気を付けることです。

点の選択する順番

上のような線を作成したい場合には1~7のように線が通る順番に点を選択してください。

もし順番通りに選択しない場合、線が無造作に点を通るので絡まった糸のようになってしまいます。

そのような絡まった線を作成したい場合はいいですが、通常の絡まらない線の場合は点の順番を意識しましょう。

Interpolateコンポーネント

Interpolateコンポーネント

使用コンポーネント:① PointBoolean Toggle ③ Interpolate

Interpolateの結果

Interpolateは複数の点を通過する曲線を上の画像のように作成します。

1つのPointコンポーネントに複数の点を格納することを忘れないでください。

Degreesの数を変更

D端子(Degree)の数値を変えることで、曲線の字数を変更し曲がり具合を調節することができます。

上の画像の場合、左から字数は1,3,5となります。

デフォルトでは数値は3に設定されています。

PeriodicをTrueにする
PeriodicをTrueに切り替え

またP端子のPeriodicをBoolean ToggleでFalseからTrueに変えると、最初と最後の点が繋がります。

Knor Styleの数値を変更

K端子のKnotStyleの数値を0~2で指定することで点を通る際の曲線の通り方を指定できます。

0(青)はuniform、1(緑)はchord、2(赤)はsqrtchordというモードになります。

Nurbs Curveコンポーネント

Nurbs Curveコンポーネント

使用コンポーネント:④ Nurbs Curve

Nurves Curveの結果

Nurves Curveは複数の点を制御点として曲線を作成します。

先程のInterpolateは点を通過しているのに対し、こちらは点を通過しません。

こちらも先ほど同様D端子(Degree)の数値を変えることで曲線の曲がり具合を変更できます。

PeriodicをTrueにする

P端子(Periodic)をTrueにして最初と最後の点を繋げた場合はこのようになります。

PolyLineコンポーネント

PolyLineコンポーネント

使用コンポーネント:⑤ PolyLine

PolyLineコンポーネントの結果

線の最後はPolyLineについてです。

このコンポーネントは複数の点を直線の線で繋ぎます。

こちらも同様にP端子(Periodic)をTrueにして最初と最後の点を繋げることができます。

以上が複数の点から線を作成する方法です。次はサーフェスの作成について解説します。

点群からサーフェスを作成する方法

Surface from Pointsコンポーネント

Surface from Pointsコンポーネント

使用コンポーネント:⑥ Surface from Points

Surface from Pointsは複数の点からサーフェスを作成してくれます。

しかし、この場合も点を選択の順番が非常に重要になります。

点を選択する順番

今回の場合、0~11の順番の通りにライノセラス上の点を選択していきます。

UV方向

選択の順番を線で表すとこのような順番になります。

また、今回の場合、0,1,2・・のような順番の方向をV方向、0,3,6・・の方向をU方向と言います。

後ほどU方向の点の数値を入力する必要があるのでこのことを覚えておいてください。

点を選択

このように点を選択後、Surface from Pointsに接続します。

そしてU方向の点の数だけU端子(U Count)に数値を入力してください。

今回は4つ点があるので4と入力します。

Surface from Pointsの結果

するとこのようにサーフェスが出来上がりました。

しかしこの場合は点上にサーフェスがありません。

P端子(Periodic)をTrueに変更

点上にサーフェスを作成したい場合にはI端子(Interpolate)をTrueに変更しましょう。

これにより線を通るサーフェスを作成できます。

Falseの場合の立体

もちろんライノセラス上の点を立体的に移動させても作成することができます。

こちらはI端子がFalseの場合です。

Trueの場合の立体

こちらはTrueの場合です。作成するモデルの目的によって使い分けましょう。

Patchコンポーネント

Patchコンポーネント

使用コンポーネント:⑦ Patch

Patchコンポーネントの結果

最後はPatchについてです。

これは先程のSurface from Pointsとは違い、点の選択の順番関係なしに点群を作成できます。

しかし、その分大まかなサーフェスが出力されます。

Surface from PointsとPatchの比較

これはSurface from PointsとPatchの比較結果です。

明らかにPatchは大まかなサーフェスになっています。

そのため選択しなければならない点があまりにも多すぎる場合などにおすすめです。

逆に選択数は少なくて正確なサーフェスを作成したい場合にはSurface from Pointsを使いましょう。

まとめ

grasshopperで点から線とサーフェスを作成

まとめです。

グラスホッパーで点群から線、またはサーフェスを作成するには

線の場合は Interpolate、Nurbs Curve、PolyLine

サーフェスの場合は Surface from Points、Patch

を使用しましょう。今回は以上になります。