ラベルを作成するには、グローバル変数等を用いて情報を呼び出す必要がありますが、リファレンスだとこれが正直分かりづらいです、、、
そこで、いくつかの題材を用いてラベルについてあれこれ書いていこうと思います。
最初の題材は「梁オブジェクトの情報を呼び出してみる」にしたいと思います。施工図のラベルなどにも参考になると思いますので、是非最後まで閲覧いただけると幸いです。
ラベルGDL作成の準備
ラベルを作成するための準備として、下の画像のようにオブジェクトのサブタイプを「ラベル」にする必要があります。この設定をすることで、ArchiCADにラベルとして認識させることができます。ちなみには任意のものも作成することができますので、自作GDLをより体系化したい場合や、パラメータを継承したい場合、アドオンで識別する時などに利用すると便利です。
GLOB_ELEM_TYPE
まずは、グローバル変数について確認していきたいと思います。基本的なものでGLOB_ELEM_TYPEというグローバル変数があります。これは、要素のタイプを返してくれるもので、ArchiCADで決められた整数が返ってきます。GDLリファレンスを確認すると、下の画像のような説明が書いてありますが、例えば梁オブジェクトであれば12か28が返ってきます。
![]() |
リファレンス一部抜粋: https://help.graphisoft.com/AC/26/JPN/GDL.pdf |
動きを確認するために、以下のスクリプトを参考にしてみてください。
2Dスクリプト
st = "" if GLOB_ELEM_TYPE = 12 | GLOB_ELEM_TYPE = 28 then st = "これは梁です。" else st = "これは梁ではありません。" endif text2 0,0,st
これを実際に保存してラベルをつけてみると、下の画像のように梁オブジェクトを判別していることが分かります。こういった処理を仕込んでおくことでラベルの入力ミス等を防ぐことができます。また、要素タイプごとに専用のグローバル変数もあったりするので、エラーを回避するためにも、前もって要素タイプを判別しておくのも良いと思います。
![]() |
ラベルを配置した様子 |
GLOB_VIEW_TYPE
またよく使うグローバル変数として、GLOB_VIEW_TYPEがあります。これは、現在のビューのタイプを取得する変数で、これもArchiCADで決められた整数が返ってきます。
2Dスクリプト
st = "" if GLOB_VIEW_TYPE = 2 then st = "これは平面図です。" else st = "これは平面図ではありません。" endif text2 0,0,st
上記のようなスクリプトを書くと以下のように表示されます。ビューによってコントロールを変えたいときなどによく使います。例えば、3Dではある程度詳細な形を作りたいけど、断面では簡単な形の表現だけで良いといった場合などです。ラベルに限らずよく使う変数ですので、こちらの存在は覚えておいても良いと思います。
![]() |
平面図 |
![]() |
断面図 |
今回はほんの一部だけですが、グローバル変数について触れてみました。
次回からは梁ラベル作成に向けて、梁の情報を取得する方法を学んでいきたいと思います。
【お知らせ】
ココナラでのサポートサービスも承っておりますので、
ご活用いただければと思います。
1日GDL作成やArchiCAD関連の相談のります 自分でGDLを作成している方へXのアカウントを作成しましたので、ぜひフォロー頂けると嬉しいです。
アカウントはこちらから⇨https://x.com/BIM_arekore
世界の建設業従事者、BIM推進者と繋がりたいです。よろしくお願いします。
0 件のコメント:
コメントを投稿
何でも気軽にコメントください。