[Grasshopper]Null・Invalid・Emptyのデータの削除や整理するClean Treeの使い方

[Grasshopper]Null・Invalid・Emptyのデータを削除や整理するClean Treeの使い方 Grasshopperコンポーネント

Null・Invalid・Emptyのデータの削除や整理をする、Clean Treeの使い方について解説します。

見え方1
見え方2

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


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


Null・Invalid・Emptyのデータの削除や整理する

Clean Treeを使うことで、Null・Invalid・Emptyのデータの削除や整理することができます。

そのため、場合によってはエラーの状態を解決することができます。

使用例

使用コンポーネント:①PointMergeLine

最初は、Null(値が存在しない場合)を作成して見てみましょう。

1つ目のMergeの1つ目の端子に、数字の0を入力します。

1つ目のMergeの残りの4つの端子には、100,0,0・200,0,0・300,0,0・400,0,0の4つの座標データを入力します。

2つ目のMergeの1つ目の端子にも、数字の0を入力します。

2つ目のMergeの残りの4つの端子には、100,100,0・200,100,0・300,100,0・400,100,0の4つの座標データを入力します。

8つの点データ

その後、座標データをPointにつなげます。

すると、座標データが、その位置にある点データに変換されます。

このように8つの点データが作成されます。

Mergeの最初の端子には、ただの数値を入力しているため、何も起きません。

Graft

この際に、2つのMergeのR端子を右クリックし、Graftを選択してください。

線を作成

その後、2つのMergeを、LineのAとB端子につなげます。

すると、上の画像のように、2つの点を結んで線が作成されます。

そして、合計4本の線が作成されました。

エラー

追加コンポーネント:①Clean Tree

しかし、Lineを見てみると、エラー表示になっています。

これは、Lineには点データを入力しなければならないのですが、数値のデータを入力しているため、エラーが起きています。

LineにPanelをつなげてデータを見てみると、1つ目の階層がnullとなっています。

残りの4つは、正常にLineと表示され、線データが作成されていることが分かります。

この状態で、Lineを、Clean TreeのT端子につなげます。

すると、1つ目の階層のnullが削除されました。

Flatten

しかし、このままでは{0;0}の階層が残ったままです。

Flattenにして、データを1つの階層にすると、空の階層を消すことができます。

Clean TreeのT端子を右クリックし、Flattenを選択します。

空の階層が消えた

すると、1つの階層にデータがまとまり、空の階層が消えました。

階層構造を維持

追加コンポーネント:①Boolean Toggle

階層構造を維持したい場合、Clean TreeのE端子にTrueと入力します。

今回は、Boolean ToggleでTrueの情報を入力しています。

すると、階層構造を維持したまま、空の階層を削除することができました。

Invalid

次は、Invalid(無効な状態)を見てみましょう。

Mergeの1つ目に入力する座標データを、どちらも0,0,0の原点の位置にします。

線が作成されない

Lineは2つの点をつないで線を作成しますが、同じ位置に点がある場合、線が作成されません。

このような場合、Invalid Lineと表示されます。

Invalidを削除

この状態で、LineをClean Treeにつなげると、Invalid Lineを削除できます。

nullとInvalidがどちらも存在する場合

nullとInvalidがどちらも存在する場合を見てみましょう。

この場合も、Clean TreeでまとめてnullとInvalidを消すことができます。

しかし場合によっては、nullかInvalidのデータを残す必要がある場合もあります。

nullデータを残す

nullデータを残したい場合、Clean TreeのN端子に、Falseと入力します。

今回は、Boolean ToggleでFalseの情報を入力しています。

すると、Invalidのデータは削除されましたが、nullデータは残りました。

Invalidデータを残す

Invalidデータを残したい場合、Clean TreeのX端子に、Falseと入力します。

すると、nullデータは削除されましたが、Invalidのデータは残りました。

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

コメント

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