Rhino/Grasshopper初心者向けチュートリアルへようこそ!今回は、閉じた曲線(カーブ)の境界線内に、整然とした垂直なボックス群を生成するロジックを学びます。パラメトリックなモデリングの基礎固めに最適です。

閉曲線とグリッドの準備

まずRhinoで閉曲線を作成し、GrasshopperのCurveコンポーネントで参照します。次に、このカーブを囲むBounding Boxコンポーネントで外接ボックスを生成。これを基準に、Square GridRectangular Gridコンポーネントを使い、ボックスのベースとなる点を配置するグリッドを作成します。グリッドの間隔はNumber Sliderで調整可能です。

境界内ポイントの抽出

生成したグリッド上の点の中から、Rhinoの閉曲線内に位置する点だけを抽出しましょう。Boundary Surfacesコンポーネントで閉曲線からサーフェスを作成し、そのサーフェスに対しPoint in Brepコンポーネントを使用。点がBrepの内側か外側かを判定し、結果をDispatchコンポーネントで内側の点に振り分けます。

ボックスベースと高さの定義

内側に抽出された各点に対し、ボックスのベースとなる四角形を作成します。Construct Planeコンポーネントで点を原点とするXY平面を生成し、その平面上でRectangleコンポーネントを使って四角形を描きます。サイズはNumber Sliderで調整可能。高さはSeriesRandomGraph Mapperと組み合わせることで、多様な高さを生成できます。

垂直押し出しでボックス生成

最後に、作成した各四角形のベースを垂直方向に押し出します。ExtrudeコンポーネントにベースのRectangleと、方向を示すUnit Zコンポーネント、そして定義した高さを接続。これで、閉曲線内に整然と配置された、高さの異なる垂直なボックス群が完成します。サンプルファイルで、ぜひ実践してみてください。