[Grasshopper]任意の数の数値データを作成するGene Poolの使い方

[Grasshopper]任意の数の数値データを作成するGene Poolの使い方 Grasshopperコンポーネント

任意の数の数値データを作成する、Gene Poolの使い方について解説します。

見え方

グラスホッパー上では上の2つのどちらかで表されます。


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


任意の数の数値データを作成する

Gene Poolを使うことで、任意の数の数値データを作成することができます。

イメージとしては、複数のNumber Sliderを1つのコンポーネントで管理できます。

Gene Poolの設定方法

Edit

数値を設定するには、Gene Poolを右クリックし、Editを選択します。

Gene Poolの設定画面

すると、Gene Poolの設定画面が表示されます。

Gene Countには、作成する数値の数を入力します。

数値が10の場合、10個の数値データが作成されます。

Decimalsには、小数点以下の数を入力します。

数値が2の場合、小数点以下第2までの数値が作成されます。

Minimumには、数値の最小値を設定します。

Maximumには、数値の最大値を入力します。

Minimumを0、Maximumが100の場合、0~100で変えられる数値が作成されます。

使用例1

最初に使う設定

最初は、デフォルトのDecimalsのみを0の整数にした設定で解説していきます。

点を横に移動させるコンポーネント

使用コンポーネント:①Construct Point ②Gene Pool ③Unit XMove

最初は、Gene Poolを使って点をX方向に連続してコピーする例を紹介します。

点を作成

Construct Pointを配置すると、原点に点が作成されます。

Gene Poolを使って点をX方向に連続してコピー

その後、Gene Poolで最初の数値を10、次を20と10ずつ数値を増えるように設定していきます。

今回は、数値データを10個用意しています。

次に、Gene PoolをUnit Xにつなげることで、X方向のベクトルを取得します。

最後に、MoveのC端子にConstruct Pointをつなげ、MoveのT端子にUnit Xをつなげます。

すると、X方向に点が連続してコピーされました。

このように、Gene Poolで複数の数値データをまとめて作成することができます。

使用例2

使用例2の設定

次の使用例では、Gene Poolの設定をDecimalsを0、Minimumを0、Maximumを360に設定します。

これで、整数で数値を0~360で数値を設定できます。

使用例2のコンポーネント
画像をクリックして拡大して見る

使用コンポーネント:①Construct Point ②Gene Pool ③Unit XMoveRectangleList Length Rotate

使用例2は、使用例1で作成した点の位置に、正方形を作成してそれぞれ異なる角度で回転させます。

使用例1では、1つの点に対して複数の数値データを割り当てていました。

使用例2では、複数のデータに、同じ数の数値データを割り当てます。

正方形を作成

先程使用したMoveを、RectangleのP端子につなげます。

さらに、Rectangleに2辺の長さの数値を入力します。

今回は、どちらにも4を入力しています。

すると、それぞれの点の位置に、正方形が作成されます。

その後、List LengthRectangleのR端子をつなげます。

すると、Rectangleのデータ数を確認できます。

今回の場合、10が出力されています。

この数値と同じ数を、Gene Poolでも作成します。

今回の場合、10個の0~360の数値範囲でGene Poolを設定します。

そして、Gene Poolのそれぞれの数値を適当にばらつかせます。

Degrees

その後、RotateのGとP端子に、RectangleのR端子をつなげます。

さらに、新しく作成したGene Poolを、RotateのA端子につなげます。

このさいに、RotateのA端子を右クリックし、Degreesを選択してください。

これで、数値を度数として使うことができます。

正方形が回転した

すると、Gene Poolで設定した角度に応じて、正方形が回転しました。

このように、複数のデータに対し、同じ数の数値データを割り当てることができます。

最適化に便利

複数のNumber Sliderを用意する必要がない
画像をクリックして拡大して見る

また、Gene Poolは最適化の際に、複数のNumber Sliderを用意する必要がないので非常に便利です。

上の画像の場合、Galapagosを使った最適化の際に、変数を設定している様子です。

Number Sliderを使って変数を設定する場合、左側のように複雑になります。

しかし、Gene Poolを使った場合、非常にシンプルにまとめることができます。

実際にGene Poolを最適化に使用した例は、上の記事の使用例を参考にお願いします。

Gene Poolコンポーネントを使用しているグラスホッパー記事はこちら↓

コメント

Translate »
タイトルとURLをコピーしました