Grasshopper :: Rhinoからの参照Geometryを非表示にする
RhinoのGeometryをGrasshopperに取り込んで何かしらの処理をするとき、元のGeometryとプレビューが重なってチラついて見づらいことがあります。
また、Geometryの内側で何か処理した際、プレビューで確認するには元のGeometryを非表示にしないと見ることができません。
そんな不便さを解消するアドオンが最近リリースされたので、さっそく使ってみました。
(弊ブログにメッセージを下さった方から情報提供していただきました。ありがとうございます。)
レシピ
レシピは以上の通りです。
立方体と、球、円柱、円錐、トーラスを作成し、その立方体とその他のGeometryとの交差部分を作成して、ボロノイ分割させています。
この時、RhinoでGeometryが表示されたままなため、ボロノイ分割部分が見えない状況になっています。
それでは、アドオンを使ってGeometryを簡単に非表示にさせてみましょう。
使い方
まずは、アドオンをGrasshopperへ取り込みます。
アドオンのダウンロード
Food4RhinoからBlindfoldをダウンロードし、Grasshopperのアドオンのフォルダへ格納します。
(ZIPファイルなので、ブロック解除を忘れずに。)
Referenced Geometryを非表示
さっそく使ってみましょう。予めボロノイ分割部分はレシピのように組んでおき、[Blindfold]コンポーネントを配置します。(格納場所は、[Display > Preview > Blindfold])
[Refresh]に[Button]、[Visiblity]に[Boolean]コンポーネントを繋ぎます。ここで[Boolean]を[True]にすると、Canvas上の[Referenced 〇〇]として読み込まれたRhinoの元のGeometryが全て非表示になります。
これで交差部分のボロノイ分割が見えるようになりました。
ちなみに、[Blindfold]コンポーネントのアイコンも表示状態に合わせて切り変わるので、わかりやすいですね。
非表示Geometryを更新
続いて、非表示にするRhinoのGeometryを追加してみましょう。
最初、円錐はGrasshopper内に取り込まれていなかったため、Blindfoldの[Visiblity]を[True]にしても表示されたままでした。
ここで、[Visiblity]が[True]のまま円錐をGrasshopperに取り込んでも、非表示になりません。
その場合は、Blindfoldの[Refresh]の[Button]を一度クリックすると、内容が更新されて非表示にすることができます。
特定のReferenced Geometryを非表示
今度は、特定のRhinoのGeometryを非表示にしましょう。
非表示にしたい[Referenced 〇〇]を[Merge]コンポーネントで一つのリストにまとめ、[Blindfold]コンポーネントの[Limited]に繋ぎます。
すると、選んだRhinoのGeometryのみを非表示にすることができます。
ここでは、交差に関わる2つのGeometryのみを非表示にしました。
立方体に交差させるGeometryを繋ぎかえると、上図のようになります。
Pythonで非表示
特定のGeometryを非表示にするなら、Pythonでもできそうと思い、簡易的な内容で書いてみました。
コードは以下の通りです。
ちなみに、[Type hint]は[Guid]で、[List Access]に設定してあります。
もし、アドオンを入れられない環境の場合等に活用できそうですね。
おわりに
いかがでしたか。Blindfoldは、Rhinoから読み込んだReferenced 〇〇のみを非表示にできるので、Rhino側で選択して非表示にしたり、レイヤを変えたりといった手間がかかりません。
痒いところに手が届く系の便利なアドオンなので、ぜひご活用ください。
使用した主なコンポーネント
- [Blindfold] (Display > Preview > Blindfold)
- [Python Script] (Maths > Script > Python Script)
- [Solid Intersection] (Intersect > Shape > Solid Intersection)