ArchiCAD GDLで机をつくてみる③
前回作成した机GDLのサイズを、パラメータスクリプトで制限してみようと思います。パラメータスクリプトにさまざまな制約を追加していきます。
パラメータに選択肢を与える
values "width" 0.9, 1.2, 1.5 values "depth" 0.6, 0.8, 1.0
例えば、上記のように
values
コマンドを使うことで、パラメータに選択肢を作ることができます。選択肢を作るだけであれば、この方法が最も手っ取り早いと思います。IF分によるパラメータの制御
以下のコードのような方法でもサイズを制限することが可能です。
if width <= 1 then parameters width = 0.9 endif if width > 1 & width <= 1.4 then parameters width = 1.2 endif if width > 1.4 then parameters width = 1.5 endif
parameters
コマンドは、パラメータの値を修正するためのコマンドです。上記のコードでは、if
文を用いて width
をコントロールしています。具体的には、width
が1m以下であれば値を0.9mに修正し、width
が1mより大きく1.4m以下であれば1.2mに修正、width
が1.4mより大きければ1.5mに修正しています。
この動きは、values
コマンドで選択肢を作る場合と似ていますが、こちらは選択肢ではなく条件によるパラメータ値の修正を行うため、少しニュアンスが異なります。if
文や他の制御を組み合わせることで、さまざまなパラメータ制御が可能になるため、この方法もよく使うものとして覚えておくと便利です。
if width <= 1 then parameters width = 0.9, depth = 0.9 endif if width > 1 & width <= 1.4 then parameters width = 1.2, depth = 1.2 endif if width > 1.4 then parameters width = 1.5, depth = 1.5 endif
parameters
コマンドは、上記コードのように変更したいパラメータをカンマ区切りで複数指定することもできます。制御したいパラメータが多い場合、このように書くことで省力化が可能です。if width <= 1 then parameters \ width = 0.9, depth = 0.9, height = 0.9 endif if width > 1 & width <= 1.4 then parameters \ width = 1.2, depth = 1.2, height = 1.2 endif if width > 1.4 then parameters \ width = 1.5, depth = 1.5, height = 1.5 endif
また、上記のようにバックスラッシュを用いると改行することができ、コードを見やすくすることができます。
parameters
コマンドは頻出のコマンドなので、こうした書き方の工夫を覚えておくと便利です。なお、基本的なGDLの学習はこちらの教材がおすすめです!
GDLリファレンスがgraphisoftが用意していますが、初見では理解しづらいので、
簡単にまとめられたやさしく学ぶArchiCAD GDLプログラミングという本で基礎をしっかり学びましょう!
また、ココナラでのサポートサービスも始めましたので、
ご活用いただければと思います。
1日GDL作成やArchiCAD関連の相談のります 自分でGDLを作成している方へ【お知らせ】
Xのアカウントを作成しましたので、ぜひフォロー頂けると嬉しいです。
アカウントはこちらから⇨https://x.com/BIM_arekore
世界の建設業従事者、BIM推進者と繋がりたいです。よろしくお願いします。
0 件のコメント:
コメントを投稿
何でも気軽にコメントください。