前回に続き、簡易鉄筋ラベルを作成していきたいと思います。
完成イメージ動画(前回の記事と同じ動画です)
あばら筋の実装
今回のGDLでは、あばら筋は簡易的に表現するだけにとどめたいと思います。あばら筋の位置調整や梁貫通孔補強筋が入ってきた場合の検討などがしたい方は、どうすれば実装できるか考えてみてください。またお問合せなどもご活用頂ければと思います。
簡易的なあばら筋を表現するために以下のようなスクリプトを作成してみました。
2Dスクリプト
!あばら筋 line_type stp_line_type pen stp_pen add2 stp_dim, 0 for i=1 to int(length/stp_pitch)+1 arc2 (i-1)*stp_pitch, width/2 - (left_cover_thickness+stp_dim/2) , stp_dim/2, 0, 180 arc2 (i-1)*stp_pitch, -width/2 + (right_cover_thickness+stp_dim/2) , stp_dim/2, 180, 360 line2 (i-1)*stp_pitch - stp_dim/2, width/2 - (left_cover_thickness+stp_dim/2) ,(i-1)*stp_pitch - stp_dim/2, -width/2 + (right_cover_thickness+stp_dim/2) line2 (i-1)*stp_pitch + stp_dim/2, width/2 - (left_cover_thickness+stp_dim/2) ,(i-1)*stp_pitch + stp_dim/2, -width/2 + (right_cover_thickness+stp_dim/2) next i del 1
上記スクリプトを今まで作成したものに追加すると、以下の画像のような状態になるかと思います。主筋の位置があばら筋の内側にきていることが確認できます。ピッチはパラメータにしていますので、変更も可能です。
![]() |
スターラップ追加 |
寸法線の追加
最後に寸法線と空き不足アラート機能を追加してみたいと思います。文字の大きさやフォントを変更可能にし、寸法線の位置もホットスポットでコントロールできるようにしていきます。
少しボリュームがありますが、以下のようなスクリプトを作成しました。空き寸法のアラートはペンの色を変更する処理を加えるとこで表現しています。
2Dスクリプト
!ラベル DEFINE STYLE "textstyle" fontType, textSize, 5, 0 SET STYLE "textstyle" pen label_pen !かぶり寸法 line2 label_pos, -width/2, label_pos, width/2 circle2 label_pos, -width/2, 0.002 circle2 label_pos, width/2, 0.002 circle2 label_pos, width/2 - left_cover_thickness, 0.002 circle2 label_pos, -width/2 + right_cover_thickness, 0.002 !あき寸法 line2 label_pos - 0.1, -width/2, label_pos -0.1, width/2 add2 label_pos - 0.1, width/2 - (left_cover_thickness+stp_dim+top_reinforcement_dim/2) for i=1 to top_reinforcement_num_1 pen label_pen add2 0, -top_reinforcement_pos_s1[i] add2 0, top_reinforcement_dim/2 :circle2 0, 0, 0.002 :del 1 add2 0, -top_reinforcement_dim/2 :circle2 0, 0, 0.002 :del 1 add2 -0.025, 0 :rot2 90 :text2 0, 0, str(top_reinforcement_dim*1000,2,0) :del 2 if top_reinforcement_num_1>i then aki=top_reinforcement_pos_s1[i+1]-top_reinforcement_pos_s1[i]-top_reinforcement_dim if aki > spacing_limit then pen label_pen else pen spacing_alert endif aki_pos=(top_reinforcement_pos_s1[i+1]-top_reinforcement_pos_s1[i])/2 add2 0.025, -aki_pos-0.005 :rot2 90 text2 0, 0, str(aki*1000, 3, 0) :del 2 endif del 1 next i del 1 pen label_pen circle2 label_pos- 0.1, width/2 - left_cover_thickness, 0.002 circle2 label_pos- 0.1, -width/2 + right_cover_thickness, 0.002 circle2 label_pos- 0.1, -width/2, 0.002 circle2 label_pos- 0.1, width/2, 0.002 rot2 90 text2 width/2+0.03, -label_pos+0.02, str(left_cover_thickness*1000, 3,0) text2 -width/2-0.04, -label_pos+0.02, str(right_cover_thickness*1000, 3,0) text2 0, -label_pos+0.02, str((width-(right_cover_thickness+left_cover_thickness))*1000, 3,0) del 1 hotspot2 0 , 0, unid, label_pos,1+128 :unid=unid+1 hotspot2 label_pos , 0, unid, label_pos,2 :unid=unid+1 hotspot2 -1 , 0, unid, label_pos,3 :unid=unid+1
以上のようなスクリプトを書くことで、動画のような寸法線を作成することができます。
鉄筋検討を行うにはまだまだ必要な機能はあるかと思いますが、GDLは工夫次第でいろんな表現が可能となっています。特に今回はラベルの機能を活かした面白いGDLになったかと思いますので、ぜひ参考にしていただければと思います。
かなり即席で作成しましたので、コードが汚い点に関してはご了承ください💦
今回は以上となります。次回の記事で簡易鉄筋GDLについてまとめを書きたいと思います。
【お知らせ】
ココナラでのサポートサービスも承っておりますので、
ご活用いただければと思います。
1日GDL作成やArchiCAD関連の相談のります 自分でGDLを作成している方へXのアカウントを作成しましたので、ぜひフォロー頂けると嬉しいです。
アカウントはこちらから⇨https://x.com/BIM_arekore
世界の建設業従事者、BIM推進者と繋がりたいです。よろしくお願いします。
0 件のコメント:
コメントを投稿
何でも気軽にコメントください。