ArchiCAD 次世代足場GDLの作成~階段~

2024年9月19日木曜日

atn GDL gosub if 足場

t f B! P L
前回に引き続き、今回は階段部分の3D形状を作成していきます。階段の配置条件は、桁行方向の寸法が1829mmであり、梁間方向の寸法が1219mmまたは914mmの場合とします。階段部材のイメージは下の画像のような感じです。

足場階段GDL
階段イメージ

新規パラメータの追加

新規パラメータ

上の画像のように、dis_stairs というブール値のパラメータを新規追加しました。このパラメータをオン・オフすることで、階段の非表示をコントロールできるようにします。

ささらと踏面の作成

以下のコードを3Dスクリプト上に書くことで、イメージのような3D形状が出来上がります。

マスタースクリプト
  1. !----------------------------------
  2. !階段
  3. !----------------------------------
  4. stairs_D = 100/t !支柱芯からの距離
  5. stairs_num = 8 !段数
  6. riser_H = 1.9/stairs_num !蹴込み高さ
  7. tread_W = 1.829/stairs_num !踏面幅

マスタースクリプトには4つの変数を定義しています。蹴込みの高さと踏面幅は段数から換算しています。

3Dスクリプト
  1. !----------------------------------
  2. !階段
  3. !----------------------------------
  4.  
  5. "階段":
  6. add 0.04, 0.1, 0.05
  7. roty 90 - atn(1.9 / 1.829)
  8. gosub "ささら"
  9. del 2
  10.  
  11. add 0.04, 0.55, 0.05
  12. roty 90 - atn(1.9 / 1.829)
  13. gosub "ささら"
  14. del 2
  15.  
  16. for i = 1 to stairs_num-1
  17. add tread_W*i - 0.05, 0.12, riser_H*i
  18. brick 0.2, 0.43, 0.02
  19. del 1
  20. next i
  21. return
  22.  
  23. "ささら":
  24. brick 0.06, 0.02, sqr((1.829 - stairs_D*2)**2 + 1.9**2)
  25. return

ささらの作成

階段部分のスクリプトは、「階段」ラベルと「ささら」ラベルに分けて、それぞれ作成しています。ささら部分の作り方は、ブレースを作成した時と同様に、三平方の定理でささらの長さを決定し、アークタンジェントで傾ける角度を求めています。

踏面の作成

踏面は for 文を使って作成しています。add コマンド内でマスタースクリプトで定義した変数と i = 1, 2, 3…を掛け算することで、brick コマンドで作成した踏面を斜めに連続複写しているイメージです。このような for 文と add コマンドの組み合わせは、さまざまな場面でよく使います。例えば、鉄筋のスターラップなどをイメージすると分かりやすいかもしれません。同じ形状を連続させるのに非常に便利です。

階段がある時の場合分け

最初にも書きましたが、階段の配置条件は、桁行方向の寸法が1829mmであり、梁間方向の寸法が1219mmまたは914mmの場合としています。そのため、以下のようなスクリプトを書くことで、この配置条件に対応できます。

注目すべきは、if dis_stairs then~ の部分です。配置条件を満たした形で階段が表示されるのはもちろんですが、それに伴ってアンチの有無やサイズも変更する必要があるため、このような書き方になっています。


3Dスクリプト
  1. unid = 3000
  2.  
  3. material pillar_mat
  4. gosub "支柱"
  5. add 0, B, 0
  6. gosub "支柱"
  7. del 1
  8.  
  9. material ledger_mat
  10. add 0, 0, 1.865
  11. rotz 90
  12. gosub "梁間方向布材"
  13. del 2
  14.  
  15. material anti_mat
  16.  
  17.  
  18. if dis_stairs & A > 1.8 then
  19. if b > 0.9 & b < 1.3 then
  20. addy B
  21. muly -1
  22. gosub "階段"
  23. del 2
  24. if b < 1.2 then
  25. add 0, 0.210, 1.865
  26. gosub "240アンチ"
  27. del 1
  28. else
  29. add 0, 0.362, 1.865
  30. gosub "490アンチ"
  31. del 1
  32. endif
  33. else
  34. gosub "アンチ"
  35. endif
  36. else
  37. gosub "アンチ"
  38. endif
  39.  
  40. addz -0.035
  41. gosub "ブレース"
  42. addy B
  43. gosub "ブレース"
  44. del 2
  45.  
  46. end

完成

最後に、完成したGDLがこちらです。梁間寸法を変えると、アンチのサイズが490mmから240mmに変更されるようになっています。また、桁行方向の寸法が1829mm以外の場合は、階段は表示されず、アンチのみが表示される仕組みになっています。

足場GDLの階段
足場GDLの階段


足場関連の記事はこちらから


なお、基本的なGDLの学習はこちらの教材がおすすめです!
GDLリファレンスがgraphisoftが用意していますが、初見では理解しづらいので、
簡単にまとめられたやさしく学ぶArchiCAD GDLプログラミングという本で基礎をしっかり学びましょう!

また、ココナラでのサポートサービスも始めましたので、
ご活用いただければと思います。
1日GDL作成やArchiCAD関連の相談のります 自分でGDLを作成している方へ


【お知らせ】
Xのアカウントを作成しましたので、ぜひフォロー頂けると嬉しいです。
アカウントはこちらから⇨https://x.com/BIM_arekore

世界の建設業従事者、BIM推進者と繋がりたいです。よろしくお願いします。

検索

最新記事

多角形GDLに機能を追加してみる③

GDLオブジェクト

UI (1) ユニーク (1) 椅子 (4) 仮囲い (6) (7) 小ネタ (3) 足場 (15) 足場計画 (4) 多角形 (3) 法規 (1) 無償DL (4)

ブログ アーカイブ

自己紹介

自分の写真
GDL作成などBIM活用のお仕事の相談お待ちしております。 #中堅ゼネコン出身 #施工管理職 #生産設計部 #BIM開発部門
ArchiCADのGDLをコスパよく作成します ArchiCADユーザーでGDL作成を外部委託されている方へ

QooQ