閉じた線や平面の範囲の和のブール演算の足し算で結合する、Region Unionの使い方について解説します。


グラスホッパー上では上の2つのどちらかで表されます。
閉じた線データの場合
Region Unionを使うことで、閉じた線や平面の範囲の和のブール演算で、足し算をして結合することができます。
まず、閉じた線データの場合を見てみましょう。

使用コンポーネント:①Rectangle ②Circle ③Region Union
最初の例では、正方形と円の線データを作成して、足し算をしてみます。

RectangleのXとY端子に、1辺の長さの数値を入力します。
今回は、1000を入力しているので、1000×1000の正方形が作成されました。
さらに、CircleのR端子に、半径の数値を入力します。
今回は500を入力しているので、半径500の円が作成されました。

その後、RectangleのR端子とCircleのC端子を、Region UnionのC端子につなげます。
すると、2つの線データが足し算され、結合されました。
サーフェスの場合
次に、サーフェスの場合も見てみましょう。

追加コンポーネント:①Surface

先程のRectangle、Circleの間に、Surfaceを入れます。
すると、閉じた線からサーフェスに変換されます。

すると、このようにサーフェス同士でも足し算されて、結合されました。
しかし、サーフェスの場合で実行しても、線データとして出力されます。

サーフェスに変換したい場合は、Region Unionを、Surfaceにつなげます。

すると、結合された線データが、サーフェスに変換されました。
P端子で作業平面を指定する

追加コンポーネント:①Series ②Unit Z ③Move ④List item ⑤Plane
今回は、真上方向に正方形と円を複数コピーし、1つの作業平面を指定してみます。

SeriesのN端子に500、C端子に10を入力します。
すると、0, 500, 1000, ・・・と、500ずつ大きくなる数値が10個作成されます。
さらに、Unit Zを、2つのMoveのT端子につなげます。
また、RectangleのR端子とCircleを、それぞれMoveのG端子につなげます。
すると、真上方向に正方形と円がコピーされ、10セット作成されました。

その後、Rectangleの方のMoveのG端子を、List ItemのL端子につなげます。
そして、List Itemのi端子に、4の数値を入力します。
すると、5番目の正方形のみを取得することができます。
これにより、その地点の作業平面のデータを取得することができました。

その後、Planeを、Region UnionのP端子につなげます。
さらに、2つのMoveのG端子を、それぞれRegion UnionのC端子につなげます。
すると、このように指定した作業平面の位置でのみ、足し算が実行されて、正方形と円が結合されました。
Region Unionコンポーネントを使用しているグラスホッパー記事はこちら↓
Comment