今回は、グラスホッパーでブラックホールとホワイトホールをイメージした空間デザイン方法について解説します。
動画で見る
全体の様子
上4枚の画像は、グラスホッパーの様子です。
上4枚の画像は、ライノセラス上に書き出した様子です。
上の画像は、最終的にレンダリングした様子です。
それでは、順番に解説していきます。
今回使用したグラスホッパーとライノセラスのデータダウンロードはこちら
ダウンロードできるデータのご利用に関しては、利用規約をご覧ください。
全体コンポーネント
全体コンポーネント:①Circle ②Area ③Division ④Series ⑤Addition ⑥Graph Mapper ⑧Bounds ⑨Construct Domain ⑩Remap Numbers ⑪Scale ⑫Unit Z ⑬Move ⑭Cull Index ⑮Merge ⑯Boolean Toggle ⑰Loft ⑱Loft Options ⑲Offset Surface ⑳Divide Domain² ㉑Isotrim ㉒Ruled Surface ㉓Brep Join
複数の円のスケールをそれぞれ変える
最初に、複数の円を作成し、それぞれスケールを変えていきます。
半径の数値を、CircleのR端子につなげます。
今回は、5000の数値を入力しています。
すると、上の画像のように、半径5000の円の線データが作成されました。
すると、上の画像のように、円の中心点を取得できます。
次に、スケールを変える数値を作成していきます。
作成する円の個数より1だけ小さい数値を、DivisionのB端子につなげます。
今回の場合、20の数値を入力しています。
さらに、1の数値を、DivisionのA端子につなげます。
すると、1÷20=0.05の数値が出力されます。
その後、先程の20の数値を、AdditionのA端子につなげます。
さらに、1の数値を、AdditionのB端子につなげます。
すると、20+1=21の数値が出力されます。
この数値は、円の個数の数値になります。
その後、Divisionを、SeriesのN端子につなげます。
さらに、Additionを、SeriesのC端子につなげます。
すると、0から0.05ずつ増加する数値が、21個作成されます。
この数値は、次に使うグラフのX軸の数値になります。
その後、Seriesを、Graph Mapperにつなげます。
この際に、Graph Mapperを右クリックし、Graph typesからBezierに設定してください。
すると、Graph Mapperから、入力したX軸の数値に該当するY軸の数値が出力されます。
その後、Graph Mapperを、Boundsにつなげます。
すると、Graph Mapperから出力される数値の、最小値と最大値から作成される数値範囲が出力されます。
その後、任意の倍率の数値を、Construct DomainのA端子につなげます。
今回は、0.5の数値を入力しています。
さらに、1の数値を、Construct DomainのB端子につなげます。
すると、0.5 To 1という数値範囲が作成されました。
その後、Graph Mapperを、Remap NumbersのV端子につなげます。
さらに、Boundsを、Remap NumbersのS端子につなげます。
さらに、Construct Domainを、Remap NumbersのT端子につなげます。
すると、Graph Mapperから出力される数値が、0.5~1の数値範囲で値が変換されました。
その後、Remap Numbersを、ScaleのF端子につなげます。
さらに、AreaのC端子を、ScaleのC端子につなげます。
さらに、Circleを、ScaleのG端子につなげます。
すると、上の画像のように、円のスケールがそれぞれ変わりました。
これで、複数の円のスケールをそれぞれ変えることができました。
それぞれの円を真上方向に移動させる
次に、それぞれの円を真上方向に移動させていきます。
さらに、真上方向に移動させる間隔の数値を、SeriesのN端子につなげます。
すると、0から500ずつ増加する数値が、21個作成されました。
さらに、ScaleのG端子を、MoveのG端子につなげます。
すると、上の画像のように、それぞれの円を真上方向に移動させることができました。
外側の複数の円を作成する
次に、外側の複数の円を作成していきます。
この内容は、これまでのCircleからMoveまでのプログラミング内容とほとんど重複しているため、細かい説明は省力します。
以下に、異なる部分のみ解説します。
上の画像のように、Graph Madpperの形を、1つ目に対して上下に反転させたような形にしてください。
さらに、Construct DomainのA端子に、1の数値を入力してください。
さらに、Construct DomainのB端子に、6の数値を入力してください。
すると、上の画像のように、外側の複数の円を作成することができました。
円をつなぐサーフェスを作成する
次に、円をつなぐサーフェスを作成していきます。
Cull Indexを2つ用意します。
2つのMoveのG端子を、それぞれCull IndexのL端子につなげます。
さらに、0と-1の数値を、Cull IndexのI端子につなげます。
すると、上の画像のように、複数の円の最初と最後のみ削除されました。
その後、2つのCull Indexを、Mergeにつなげてください。
この際に、2つ目のCull Indexを入力した端子を右クリックし、Reverseに設定してください。
すると、上の画像のように、円の線データを結合することができました。
さらに、Loft Optionsを、LoftのO端子につなげます。
さらに、Trueの情報を、Loft OptionsのCls端子につなげます。
今回は、Boolean ToggleでTrueの情報を作成しています。
これにより、サーフェスが閉じるようになります。
さらに、1の数値を、Loft OptionsのT端子につなげます。
これにより、設定がLooseになり、円の線データが滑らかにつながるようになります。
これにより、上の画像のようなサーフェスが作成されます。
これで、円をつなぐサーフェスを作成することができました。
厚みを付ける
最後に、厚みを付けていきます。
Loftを、Offset SurfaceのS端子につなげます。
さらに、オフセットする数値を、Offset SurfaceのD端子につなげます。
今回は、500の数値を入力しています。
すると、上の画像のように、サーフェスがオフセットされました。
しかし、このままでは厚みにはならないため、サーフェスを分割する必要があります。
Loftを、Divide Domain²のI端子につなげます。
さらに、分割数の数値を、Divide Domain²のUとV端子につなげます。
今回は、どちらにも20の数値を入力しています。
その後、2つのIsotrimのD端子に、Divide Domain²をつなげます。
さらに、Loftを、1つ目のIsotrimのS端子につなげます。
さらに、Offset Surfaceを、2つ目のIsotrimのS端子につなげます。
すると、上の画像のように、サーフェスが分割されます。
この際に、2つのIsotrimの右側のS端子を右クリックし、Graftに設定してください。
その後、2つのIsotrimを、Ruled Surfaceにつなげます。
すると、前後の各サーフェスの枠をつなぐサーフェスが作成されます。
その後、2つのIsotrim1とRuled Surfaceを、Brep Joinにつなげます。
すると、3つのサーフェスが結合されます。
これで完成です。
今回は以上になります。
Comment