Grasshopper :: Layerを読み込む

今回は、Rhino上のレイヤを読み込む方法です。Rhino上のオブジェクトは[Geometry Pipeline]コンポーネントでできますが、レイヤはデフォルトのコンポーネントで読み込めないので、Pythonで読み込んでみました。

 

レシピ

コードは以下の通りです。

レイヤは、layer_name = sc.doc.Layersで読み込むことができます。

注意していただきたいのが、ここで読み込まれるレイヤは、今まで作成された全てのレイヤになるため、削除されたレイヤも表示されてしまいます。

そこで、if not layer.IsDeletedで削除されたレイヤ以外をリストに追加して完了です。

sc.doc = rh.RhinoDoc.ActiveDocについては、今後別で投稿したいと思うので、今回はスルーします。

 

それでは試してみましょう。下図は、レイヤを削除する前です。

 

レイヤを削除して、GrasshopperでRecomputeするか、[Boolean Toggle]コンポーネントを切り替えると、、、

この様に[b]から削除されていないレイヤが表示されます。

レイヤが読み込めたので、今回はここまで。今後、レイヤ内のオブジェクトを読み込んでみたいと思います。

 

使用した主なコンポーネント
  • [Python Script] (Maths > Script > Python Script)
  • [Boolean Toggle] (Params > Input > Boolean Toggle)

コメントを残す