结构设计中根据配筋简图进行梁配筋方案选择是占比很大一块工作,尤其涉及到修改时。如简图文字为3,配筋方案为2根14,或3根12 。
配筋方案根据个人常常比较固定,因此可以将其代码化,如200宽的梁,分别设置顶筋和底筋的配筋方案,
get-astlist(wztxt / aslst)
get-asblist(wztxt / aslst)
当然,对配筋简图进行读取,需要对文字内容进行分析,截取相应的简图文字。
getas( en bflag / stras as-list pt pt1 pt2 pt3 pt4 ptm ptlist boxh gjl as asgj gjm as1 as2 as3 )
对分析之前,还需要判断,简图文字在于梁上还是梁下,生成bflag标志,传给内容分析函数:
(setq en1 (car en) )
(setq ang (get-dxf 50 en1) self-ang (angle '(0 0 0)(getvar 'ucsxdir))) ;a 文字旋转角度 弧度(WCS)
(setq ptb (trans (get-dxf 10 en1) en1 1))
;通过检查文字周边是否有线来判断bflag,100范围内有线,说明文字在上方。
;(ssget "_C" pt0 pt1 '((0 . "Line")))
(setq ss (ssget "_C" ptb (offset_point ptb 0 -100 (- ang self-ang)) '((0 . "LINE"))))
(if (and ss (> (sslength ss) 0))
(setq bflag 100)(setq bflag 350))
根据配筋简图文字取得配筋方案文字列表后,当列表内数字大于1时,弹出菜单进行选择:
(if ( < (length wzlst) 2)
(progn
(princ (strcat "\n简图 " wztxt " 配筋为 " (car wzlst)))
(set-aslist (car wzlst) pta bflag)
)
(progn ;wzlst >= 2 用菜单选择
(IF (SETQ WZ (CADR (YY:YJCAIDAN (CADR EN) LEN LEN1 WZLST OLDWZ)));;调用菜单函数
(progn
(princ (strcat "\n简图 " wztxt " 配筋为 " wz))
(set-aslist wz pta bflag)
);progn
) ; IF
);progn wzlst >=2
);if 判断 wzlst
其中set-aslist函数是根据用户选择文字、直线或未选择三种情况处理配筋方案文字。
1.选择为文字时,直接更新文字内容;
2.选择为直线时,根据bflag标志,在该直线上下生成文字;
3.当未选择到对象时,生成拖拽的文字,供用户自由布置。
其中选择文字和直线支持块内对象。
以上操作,均支持UCS。
Last Modified·2018年6月10日 21:00
您尚未登录,请先登录才能评论。