Python覚えたけどGrasshopperでの使い方がよく分からない
Grasshopperを使いながらPythonを覚えたい
こんなお悩みがある人はぜひ読んでみて下さい。
GrasshopperとPythonを設計業務で使う方法を紹介します。
Grasshopperだけでも効率が上がったり高度な検討ができるのですが、Pythonを使えるようになるとGrasshopperは更にパワフルなツールにレベルアップします。
また、Pythonは一般的に学習コストが低めなプログラミング言語と呼ばれているので、短期集中でデジタルスキルを伸ばすことができるのも推しポイントです。
panna(パンナ)| 建築デジタルの専門家
大学・大学院で建築学を専攻し、修了後は設計事務所へ入所。現在はBIMの仕事をしています。
建築デジタル歴は10年以上。Rhino+GrasshopperとPythonを大学生時代から使い始め、2017年からAutodesk RevitでBIM推進開始。
パソコンを使って副業をしています。これまでに購入したパソコンは8台になりました。
GrasshopperでPythonを使う方法
GhPythonコンポーネントを呼び出す
はじめから入っている「Math」→「Script」→「GhPython」コンポーネントを使用します。
入力データと出力データを編集する
GhPythonコンポーネントは入力データを設定でき、Pythonにやってもらいたい処理のなかで使うことができます。
Grasshopper内のデータを活用しましょう。
ズームアップすると出てくる「+」「-」をクリックすることで、この入力・出力データの数を変更できます。
また、入力・出力データの名前の上で右クリックを押すことで、名前の変更が可能です。
今回は、入力データの数を1つにして名前を「name」に変更し、出力データの数を1つにして名前を「message」にします。
Grasshopperのビューポートの空いているところへカーソルを移動してダブルクリックすると、コンポーネントを呼び出すことができるので、「//」とスラッシュを2回入力してみましょう。
Panelを呼び出すことができるので、そのままEnterキーを押します。
呼び出したPanelをコピペするなどし、入力データと出力データにそれぞれ接続します。
入力データに接続したPanelに「あなたの名前」を入力してください。
これで、GhPythonコンポーネントに入力データとして「panna」という文字列を送り、messageという名前の変数を出力データとして受け取る準備ができました。
Pythonにやってもらう処理を記入する
次は、Pythonにやってもらう処理を記入します。
GhPythonコンポーネントの「Python」と書かれている部分をダブルクリックすると、次のようなスクリプトエディタが開かれます。
初期状態では次のように処理が書かれています。
"""Provides a scripting component.
Inputs:
x: The x script variable
y: The y script variable
Output:
a: The a output variable"""
__author__ = "あなたのユーザー名"
__version__ = "作成した日付"
import rhinoscriptsyntax as rs
寄り道:はじめに書かれているコードについて
GhPythonコンポーネント作成時の入力データと出力データに関する説明や、作成者・作成日の情報が書かれています。
一番最後の行「import rhinoscriptsyntax as rs」の部分では、次のリンク先のrhinoscriptsyntaxモジュールの呼び出しを行っておりこの後に続けて処理を書くことで利用できます。
分からなくても読み進められるのでご安心ください。
書かれているコードを一度すべて消して、次のコードを記入しましょう。
message = "Hello, " + name
このコードの意味は、「Hello, 」という文字列に変数nameをつなげた文字列を、変数messageに代入するという意味を持っています。
つまり、出力データであるmessageに文字列を代入する処理をPythonにやってもらっているという事です!
スクリプトエディタの右上にある「Test」をクリックすると、処理が実行されます。
これで、入力データnameを使ってPythonに処理をさせ、出力データmessageを受け取ることができました。
GrasshopperでPythonを使って処理を行う第一歩を進められました。
まとめ:GhPythonコンポーネントを使ってGrashopperのデータを活用しよう
GhPythonコンポーネントの使い方を理解しました。
- 「Math」→「Script」→「GhPython」コンポーネント
- 入力・出力データの数と名前は変更できる
- 入力・出力データの名前は処理の中で使う変数名
- Panelコンポーネントで入力データを作成できる
- Panelコンポーネントで出力データを表示できる
GrasshopperでPythonを使う準備が整えることができました。
コメント