Grasshopper :: RhinoのTextを読み込む

前回は、Geometryを読み込みましたが、GrasshopperのデフォルトのコンポーネントではTextを読み込むことができません。

そこで今回は、前回も使ったアドオンの「Human」Pythonを使ってTextを読み込みたいと思います。

 

レシピ

Rhinoの画面を見てみると、配置されたTextの左下(一部中央下)にGrasshopperで読み込まれた点が表示されているのがわかるかと思います。

この点は、Textを配置した際の基点です。この点とTextをアドオン「Human」とPythonで読み込んで見たいと思います。

 

Human(アドオン)の場合

今回もアドオンの「Human」を使用します。

【ダウンロードサイト】

以前紹介した方法でレイヤを読み込み、[Dynamic Geometry Pipeline]コンポーネントで入力側の[Type Filter]を”Text”にして読み込みます。

このままでは[Rhino.DocObjects.TextObject]と出力され、中身がわからないので、[Text Object Info]コンポーネントに繋ぎます。

すると出力側から、[Plane][Text][Size]など、そのTextに関する情報が返されます。

ここでもGeometryを読み込む時と同様、常にRhinoを読み込む状態になっているので、Textの数が増えると、RhinoでTextを編集する度にGrasshopperで処理が行われ、Rhinoでの編集の作業性が悪くなってしまいます

そんな時はPythonで読み込むと便利です。

 

Pythonの場合

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

入力側の[Layer]にはレイヤ名を、[x]には[Boolean Toggle]コンポーネントを繋ぎます。

Pythonで読み込んだ場合は、

  • Textの何の情報を出力するか選べる。
  • 一度読み込むと、Recomputeするか[x]のTrue/Falseを切り替えないと更新されない。

といった特徴があります。

 

Rhinoに配置したDWGの図面の文字情報を読み込みたい場合などに使えそうですね。

用途に合わせて読み込む方法を選んでみてください。

 

使用した主なコンポーネント
  • [Dynamic Geometry Pipeline] (Human > Reference > Dynamic Geometry Pipeline)
  • [Text Object Info] (Human > Reference > Dynamic Geometry Pipeline)
  • [Python Script] (Maths > Script > Python Script)

コメントを残す

メールアドレスが公開されることはありません。