;Filename: STAIR-A.LSP Draw Reinforced Concrete Stair. (c)1997. BANH NGUYEN (defun SA1 () (setvar "blipmode" 1) (setvar "dimscale" 26) (setvar "cmdecho" 0) ;(command "dim1" "save" "banh") (prompt"\n***** STAIR-A1.LSP Copyright 1997, Architect:BANH NGUYEN *****") (prompt"\n********** NEEDED to set LIMITS 1440 x 1080 or Larger **********\n") ;;;;Get information (setq p1 (getpoint"\n Pick Lower Left Beam Section Corner. ")) (setq sw (getdist"\n Stair Width in Centimeter <100>. . ? ")) (if (= sw nil)(setq sw 100)) (setq sh (getdist"\n Distance Floor to Floor in cm <300>? ")) (if (= sh nil)(setq sh 300)) (setq nu (getint"\n Even Amount of step <20> . . . . . ? ")) (if (= nu nil)(setq nu 20)) (setq st (getdist"\n Step thickness in Centimeter <6> . ? ")) (if (= st nil)(setq st 6)) (setq tw (getdist"\n Step Width in Centimeter <28>. . . ? ")) (if (= tw nil)(setq tw 28)) (setq bw (getdist"\n Beam Width in Centimeter <22>. . . ? ")) (if (= bw nil)(setq bw 22)) (setq bh (getdist"\n Beam Height in Centimeter <40> . . ? ")) (if (= bh nil)(setq bh 40)) ;;;;Draw lover concrete beam section (setq p2 (list (+(car p1) bw) (cadr p1))) (setq p3 (list (car p2) (+(cadr p2) bh))) (setq p4 (list (car p1) (cadr p3))) ;;;;Draw middle concrete beam section (setq sl (/ sh 2)) ;half height (setq ss (+ sl sw)) (setq num-step (/ nu 2)) (fix num-step) (setq hh (/ sl num-step)) (setq tww (* num-step tw)) (setq p5 (list (+(car p1) tww sw) (+(cadr p1) sl))) (setq p6 (list (+(car p5) bw) (cadr p5))) (setq p7 (list (car p6) (+(cadr p6) bh))) (setq p8 (list (car p5) (cadr p7))) (command "viewres" "" 20000 "") (command "pline" p5 p6 p7 p8 p5 "") ;;;;Array step (setq s2 (list (-(car p8) sw) (cadr p8))) (setq s23 (list (-(car s2) 3) (cadr s2))) (setq s22 (list (+(car s2) tw) (cadr s2))) (setq s24 (list (car s23) (-(cadr s23) st))) (setq s25 (list (car s2) (cadr s24))) (command "pline" s25 s24 s23 s22 "") (setq count 1) (setq pw (list (car s22) (cadr s22))) (while (< count num-step) (setq pc (list (-(car s22) (* count tw)) (-(cadr s22) (* count hh)))) (command "COPY" "last" "" pw pc "") (setq pw (list (car pc) (cadr pc))) (setq count (1+ count)) ) ;;;;Array step (setq s21 (list (car s2) (-(cadr s2) hh))) (command "line" s25 s21 "") (setq count1 1) (setq pv (list (car s25) (cadr s25))) (while (< count1 num-step) (setq pc1 (list (-(car s25) (* count1 tw)) (-(cadr s25) (* count1 hh)))) (command "COPY" "last" "" pv pc1 "") (setq pv (list (car pc1) (cadr pc1))) (setq count1 (1+ count1)) ) ;;;;Draw stair beam (setq count2 (- count1 1)) (setq hhst (- hh st)) (setq p33 (list (-(car s25) (* count2 tw)) (-(cadr s25) (* count2 hh) hhst))) (setq s26 (list (car s22) (cadr p5))) ;;;;Draw bottom beam section (setq pa (list (-(car p33) bw) (cadr p33))) (setq pb (list (car pa) (-(cadr pa) bh))) (setq pd (list (car p33) (cadr pb))) (command "pline" p33 pa pb pd p33 "" ;bottom beam section "line" s22 p8 "" "line" pd s26 p5 "") ;;;;Draw upper stair (setq c1 (list (car s2) (+(cadr s2) hhst))) (setq c2 (list (+(car c1) 3) (cadr c1))) (setq c3 (list (car c2) (+(cadr c2) st))) (setq c4 (list (-(car c3) tw 3) (cadr c3))) (command "pline" s2 c1 c2 c3 c4 "") (setq count3 1) (setq pk (list (car s2) (cadr s2))) (while (< count3 num-step) (setq pn (list (-(car s2) (* count3 tw)) (+(cadr s2) (* count3 hh)))) (command "COPY" "last" "" pk pn "") (setq pk (list (car pn) (cadr pn))) (setq count3 (1+ count3)) ) ;;;;Draw upper stair beam (setq xx (/(*(- tw bw) hh) tw)) (setq d1 (list (car p33) (+(cadr p33) sh))) (setq d2 (list (-(car d1) bw) (cadr d1))) (setq d3 (list (car d2) (-(cadr d2) bh))) (setq d4 (list (car d1) (cadr d3))) (setq d5 (list (car d3) (-(cadr d3) xx))) (setq d6 (list (car d1) (-(cadr d1) st))) (setq c5 (list (car s2) (-(cadr s2) bh))) (setq c6 (list (-(car c5) (* 1.1 tw)) (+(cadr c5) (* 1.1 hh)))) (command "pline" d2 d3 d4 d6 "" "line" d3 d5 c6 "" "color" "red" "ltscale" 20 "" "linetype" "set" "hidden2" "" "line" c6 c5 s26 "" "linetype" "set" "continuous" "" "color" "white") ;;;;Draw upper stair section (setq ap5 (list (car p5) (+(cadr p5) 120))) (setq ap6 (list (car p6) (cadr ap5))) (setq ap7 (list (car p6) (+(cadr ap6) bh))) (setq ap8 (list (car ap5) (cadr ap7))) (command "pline" ap5 ap6 ap7 ap8 ap5 "") (setq as2 (list (car s2) (+(cadr s2) 120))) (setq ac1 (list (car c1) (+(cadr c1) 120))) (setq ac2 (list (car c2) (+(cadr c2) 120))) (setq ac3 (list (car c3) (+(cadr c3) 120))) (setq ac4 (list (car c4) (+(cadr c4) 120))) (command "line" as2 ap8 "" "pline" as2 ac1 ac2 ac3 ac4 "") (setq count4 1) (setq apk (list (car as2) (cadr as2))) (while (< count4 num-step) (setq apn (list (-(car as2) (* count4 tw)) (+(cadr as2) (* count4 hh)))) (command "COPY" "last" "" apk apn "") (setq apk (list (car apn) (cadr apn))) (setq count4 (1+ count4)) ) (setq ad1 (list (car d1) (+(cadr d1) 120))) (setq ad2 (list (car d2) (+(cadr d2) 120))) (setq ad3 (list (car d3) (+(cadr d3) 120))) (setq ad4 (list (car d4) (+(cadr d4) 120))) (setq ad5 (list (car d5) (+(cadr d5) 120))) (setq ad6 (list (car d6) (+(cadr d6) 120))) (setq ac5 (list (car c5) (+(cadr c5) 120))) (Command "pline" ad2 ad3 ad4 ad6 "" "pline" ad3 ad5 ac5 ap5 "") ;;;;Draw bottom beam section with stirrup (setq b 1.066666) (setq e (* b 0.7071)) (setq f (* 2 b)) (setq 1p33 (list (-(car p33) 3) (-(cadr p33) 3))) (setq 1p33a (list (car 1p33) (+(cadr 1p33) b))) (setq 1p33b (list (+(car 1p33) b) (cadr 1p33))) (setq 1pa (list (+(car pa) 3) (cadr 1p33))) (setq 1paa (list (car 1pa) (+(cadr 1pa) b))) (setq 1pab (list (-(car 1pa) b) (cadr 1pa))) (setq 1pa1 (list (+(car 1pa) e) (+(cadr 1pa) e))) (setq 1pa2 (list (-(car 1pa) e) (-(cadr 1pa) e))) (setq 1pa3 (list (+(car 1pa1) 2) (-(cadr 1pa1) 2))) (setq 1pa4 (list (+(car 1pa2) 2) (-(cadr 1pa2) 2))) (setq 1pb (list (car 1pa) (+(cadr pb) 3))) (setq 1pba (list (car 1pb) (-(cadr 1pb) b))) (setq 1pbb (list (-(car 1pb) b) (cadr 1pb))) (setq 1pd (list (car 1p33) (cadr 1pb))) (setq 1pda (list (car 1pd) (-(cadr 1pd) b))) (setq 1pdb (list (+(car 1pd) b) (cadr 1pd))) (command "donut" 0.01 f 1p33 "" "donut" 0.01 f 1pa "" "donut" 0.01 f 1pb "" "donut" 0.01 f 1pd "" "line" 1p33a 1paa "" "line" 1pab 1pbb "" "line" 1pba 1pda "" "line" 1pdb 1p33b "" "line" 1pa1 1pa3 "" "line" 1pa2 1pa4 "") ;;;;Draw rest step beam section 1 with stirrup (setq 2p7 (list (-(car p7) 4) (-(cadr p7) 5.5))) (setq 2p7a (list (car 2p7) (+(cadr 2p7) b))) (setq 2p7b (list (+(car 2p7) b) (cadr 2p7))) (setq 2p8 (list (+(car p8) 3) (cadr 2p7))) (setq 2p8a (list (car 2p8) (+(cadr 2p8) b))) (setq 2p8b (list (-(car 2p8) b) (cadr 2p8))) (setq 2p81 (list (+(car 2p8) e) (+(cadr 2p8) e))) (setq 2p82 (list (-(car 2p8) e) (-(cadr 2p8) e))) (setq 2p83 (list (+(car 2p81) 2) (-(cadr 2p81) 2))) (setq 2p84 (list (+(car 2p82) 2) (-(cadr 2p82) 2))) (setq 2p5 (list (car 2p8) (+(cadr p5) 3))) (setq 2p5a (list (car 2p5) (-(cadr 2p5) b))) (setq 2p5b (list (-(car 2p5) b) (cadr 2p5))) (setq 2p6 (list (car 2p7) (cadr 2p5))) (setq 2p6a (list (car 2p6) (-(cadr 2p6) b))) (setq 2p6b (list (+(car 2p6) b) (cadr 2p6))) (command "donut" 0.01 f 2p7 "" "donut" 0.01 f 2p8 "" "donut" 0.01 f 2p5 "" "donut" 0.01 f 2p6 "" "line" 2p7a 2p8a "" "line" 2p8b 2p5b "" "line" 2p5a 2p6a "" "line" 2p6b 2p7b "" "line" 2p81 2p83 "" "line" 2p82 2p84 "") ;;;;Draw rest step beam section 2 with stirrup (setq 2ap7 (list (-(car ap7) 4) (-(cadr ap7) 5.5))) (setq 2ap7a (list (car 2ap7) (+(cadr 2ap7) b))) (setq 2ap7b (list (+(car 2ap7) b) (cadr 2ap7))) (setq 2ap8 (list (+(car ap8) 3) (cadr 2ap7))) (setq 2ap8a (list (car 2ap8) (+(cadr 2ap8) b))) (setq 2ap8b (list (-(car 2ap8) b) (cadr 2ap8))) (setq 2ap81 (list (+(car 2ap8) e) (+(cadr 2ap8) e))) (setq 2ap82 (list (-(car 2ap8) e) (-(cadr 2ap8) e))) (setq 2ap83 (list (+(car 2ap81) 2) (-(cadr 2ap81) 2))) (setq 2ap84 (list (+(car 2ap82) 2) (-(cadr 2ap82) 2))) (setq 2ap5 (list (car 2ap8) (+(cadr ap5) 3))) (setq 2ap5a (list (car 2ap5) (-(cadr 2ap5) b))) (setq 2ap5b (list (-(car 2ap5) b) (cadr 2ap5))) (setq 2ap6 (list (car 2ap7) (cadr 2ap5))) (setq 2ap6a (list (car 2ap6) (-(cadr 2ap6) b))) (setq 2ap6b (list (+(car 2ap6) b) (cadr 2ap6))) (command "donut" 0.01 f 2ap7 "" "donut" 0.01 f 2ap8 "" "donut" 0.01 f 2ap5 "" "donut" 0.01 f 2ap6 "" "line" 2ap7a 2ap8a "" "line" 2ap8b 2ap5b "" "line" 2ap5a 2ap6a "" "line" 2ap6b 2ap7b "" "line" 2ap81 2ap83 "" "line" 2ap82 2ap84 "") ;;;;Draw top beam section with stirrup (setq 1ad1 (list (-(car ad1) 3) (-(cadr ad1) 3))) (setq 1ad1a (list (car 1ad1) (+(cadr 1ad1) b))) (setq 1ad1b (list (+(car 1ad1) b) (cadr 1ad1))) (setq 1ad2 (list (+(car ad2) 3) (cadr 1ad1))) (setq 1ad2a (list (car 1ad2) (+(cadr 1ad2) b))) (setq 1ad2b (list (-(car 1ad2) b) (cadr 1ad2))) (setq 1ad21 (list (+(car 1ad2) e) (+(cadr 1ad2) e))) (setq 1ad22 (list (-(car 1ad2) e) (-(cadr 1ad2) e))) (setq 1ad23 (list (+(car 1ad21) 2) (-(cadr 1ad21) 2))) (setq 1ad24 (list (+(car 1ad22) 2) (-(cadr 1ad22) 2))) (setq 1ad3 (list (car 1ad2) (+(cadr ad3) 3))) (setq 1ad3a (list (car 1ad3) (-(cadr 1ad3) b))) (setq 1ad3b (list (-(car 1ad3) b) (cadr 1ad3))) (setq 1ad4 (list (car 1ad1) (cadr 1ad3))) (setq 1ad4a (list (car 1ad4) (-(cadr 1ad4) b))) (setq 1ad4b (list (+(car 1ad4) b) (cadr 1ad4))) (command "donut" 0.01 f 1ad1 "" "donut" 0.01 f 1ad2 "" "donut" 0.01 f 1ad3 "" "donut" 0.01 f 1ad4 "" "line" 1ad1a 1ad2a "" "line" 1ad2b 1ad3b "" "line" 1ad3a 1ad4a "" "line" 1ad4b 1ad1b "" "line" 1ad21 1ad23 "" "line" 1ad22 1ad24 "") ;;;;Draw beam longitudinal steel at rest step (setq i (/ f 4)) (setq aap7 (list (car 2p7) (+(cadr 2p7) 1.5))) (setq bp7 (list (+(car 2p7) 1.5) (cadr 2p7))) (setq aap6 (list (car bp7) (+(cadr 2p6) 7))) (setq bp6 (list (-(car aap6) 2) (cadr aap6))) (setq cp6 (list (car bp6) (+(cadr bp6) 2))) (setq cp7 (list (+(car s22) 3) (cadr aap7))) (setq ga (list (car 2p6) (+(cadr 2p6) 1.5))) (setq gb (list (car ga) (+(cadr ga) 2))) (setq gc (list (-(car ga) 2) (cadr gb))) (setq ja (list (-(car s2) (* 1.8 tw)) (cadr ga))) (setq jb (list (car ja) (-(cadr ja) 2))) (setq jc (list (+(car jb) 2) (cadr jb))) (command "pline" gc "w" i i gb "a" ga "l" ja "a" jb "l" jc "") (setq kap7 (list (car 2ap7) (+(cadr 2ap7) 1.5))) (setq kbp7 (list (+(car 2ap7) 1.5) (cadr 2ap7))) (setq kap6 (list (car kbp7) (+(cadr 2ap6) 7))) (setq kbp6 (list (-(car kap6) 2) (cadr kap6))) (setq kcp6 (list (car kbp6) (+(cadr kbp6) 2))) (setq kcp7 (list (-(car as2) (* 1.8 tw)) (cadr kap7))) (setq kdp7 (list (car kcp7) (-(cadr kcp7) 2))) (setq kep7 (list (+(car kdp7) 2) (cadr kdp7))) (command "pline" kcp6 kbp6 "a" kap6 "l" kbp7 "a" kap7 "l" kcp7 "a" kdp7 "l" kep7 "") ;;;;Draw beam longitudinal steel from rest step to top (setq uga (list (car 2ap6) (+(cadr 2ap6) 1.5))) (setq ugb (list (car uga) (+(cadr uga) 2))) (setq ugc (list (-(car uga) 2) (cadr ugb))) (setq uja (list (+(car ac5) 3) (cadr uga))) (setq ujb (list (-(car ac5) 3) (+(cadr uja) 1))) (setq ujc (list (car 1ad3) (+(cadr ad5) 1.7))) (setq ujd (list (-(car 1ad3) 1.5) (+(cadr ad5) 4))) (setq uje (list (car ujd) (+(cadr 1ad3) 7))) (setq ujf (list (+(car uje) 2) (cadr uje))) (setq ujg (list (car ujf) (-(cadr ujf) 2))) (command "pline" ugc ugb "a" uga "l" uja "a" ujb "l" ujc "a" ujd "l" uje "a" ujf "l" ujg "") (setq x1 (/(* tw bh) hh)) (setq x2 (- x1 10)) (setq x3 (- x1 12.6)) (setq nt1 (list (car 1ad2) (-(cadr 1ad2) 5.357143))) (setq nt2 (list (car uje) (-(cadr nt1) 1))) (setq nt3 (list (car nt2) (+(cadr uje) 5))) (setq nt4 (list (+(car nt3) 2) (cadr nt3))) (setq nt5 (list (car nt4) (+(cadr nt4) 2))) (setq tn1 (list (+(car ac5) x3) (cadr uga))) (setq tn2 (list (+(car tn1) 1) (+(cadr tn1) 2))) (setq tn3 (list (-(car tn2) 2) (+(cadr tn2) 1))) (command "pline" nt5 nt4 "a" nt3 "l" nt2 "a" nt1 "l" tn1 "a" tn2 "l" tn3 "") ;;;;Draw beam longitudinal steel from bottom to rest step (setq qa (list (car 1pb) (+(cadr 1pb) 1.5))) (setq qb (list (car qa) (+(cadr qa) 2))) (setq qc (list (+(car qb) 2) (cadr qb))) (setq qd (list (+(car pd) 1) (cadr qa))) (setq qe (list (+(car qd) 2.5) (+(cadr qd) 0.8))) (setq ka (list (+(car s22) x2) (cadr cp7))) (setq kb (list (+(car ka) 1.3) (-(cadr ka) 1.3))) (setq kc (list (-(car ka) 0.6) (-(cadr ka) 2.6))) (command "pline" qc qb "a" qa "l" qd "a" qe "l" ka "a" kb "l" kc "") (setq y (-(car 1p33) (car 1pa))) (setq x (/(* hh y) tw)) (setq r1 (list (+(car 1pa) 1) (-(cadr 1pa) x 1.2))) (setq r2 (list (-(car r1) 1.5) (-(cadr r1) 2.5))) (setq ra (list (car r2) (+(cadr qb) 3))) (setq rb (list (+(car ra) 2) (cadr ra))) (setq rc (list (car rb) (+(cadr rb) 2))) (setq e1 (list (-(car s22) 1.5) (-(cadr cp7) 1.5))) (command "pline" rc rb "a" ra "l" r2 "a" r1 "l" e1 "a" cp7 "l" aap7 "a" bp7 "l" aap6 "a" bp6 "l" cp6 "w" 0 0 "") (setq s27 (list (+(car s26) 3.909740) (cadr ja))) (setq s28 (list (-(car e1) 9.105915) (-(cadr e1) 5.365599))) (setq s29 (list (car 1p33b) (-(cadr 1p33b) 1.2))) (setq s30 (list (+(car qe) 9.333978) (+(cadr qe) 5.517337))) (setq ax (angtos (angle r1 e1))) (command "line" s29 s30 "") (setq fg (/(-(car s28) (car s29)) 50)) (fix fg) (setq count6 0) (while (< count6 fg) (setq nx (+ 5 (/ count6 0.28))) (command "snap" "rotate" "0,0" ax) (setvar "snapmode" 0) (command "array" "last" "" "R" 1 3 nx "") (setq count6 (1+ count6)) );while ;Draw stirrup (command "line" s27 s28 "") (setq count7 0) (while (< count7 fg) (setq nx (+ 5 (/ count7 0.28))) (command "snap" "rotate" "0,0" ax) (setvar "snapmode" 0) (setq nxx (- nx)) (command "array" "last" "" "R" 1 3 nxx "") (setq count7 (1+ count7)) );while ;Draw stirrup (command "snap" "rotate" "0,0" "0") (setvar "snapmode" 0) ;;;;Draw longitudinal beam stirrup at rest step, beam 1 (setq st1 (list (car p8) (cadr aap7))) (setq st2 (list (car st1) (cadr ga))) (command "line" st1 st2 "") (setq ma (/ sw 30)) (fix ma) (setq count5 0) (while (< count5 ma) (setq nv (+ 5 (/ count5 0.28))) (setq nvv (- nv)) (command "array" "last" "" "R" 1 3 nvv "") (setq count5 (1+ count5)) );while ;Draw stirrup ;;;;Draw longitudinal beam stirrup at rest step, beam 2 (setq ts1 (list (car ap8) (cadr kap7))) (setq ts2 (list (car ts1) (cadr uga))) (command "line" ts1 ts2 "") (setq ma1 (+ 1 ma)) (setq count8 0) (while (< count8 ma1) (setq nv1 (+ 5 (/ count8 0.28))) (setq nv2 (- nv1)) (command "array" "last" "" "R" 1 3 nv2 "") (setq count8 (1+ count8)) );while ;Draw stirrup ;;;;Draw longitudinal beam stirrup, beam 2 (setq bt1 (list (car 1ad1b) (-(cadr 1ad1b) 15.8))) (setq bt2 (list (+(car ujc) 1.795748) (-(cadr ujc) 1.067173))) (setq tb1 (list (+(car as2) 11.778684) (-(cadr as2) 9.838666))) (command "line" bt1 bt2 "") (setq az (angtos (angle ujc ujb))) (setq count9 0) (while (< count9 fg) (setq nz (+ 5 (/ count9 0.28))) (command "snap" "rotate" "0,0" az) (setvar "snapmode" 0) (command "array" "last" "" "R" 1 3 nz "") (setq count9 (1+ count9)) );while ;Draw stirrup (command "line" ujb tb1 "") (setq counta 0) (while (< counta fg) (setq ny (+ 5 (/ counta 0.28))) (command "snap" "rotate" "0,0" az) (setvar "snapmode" 0) (setq nyy (- ny)) (command "array" "last" "" "R" 1 3 nyy "") (setq counta (1+ counta)) );while ;Draw stirrup (command "snap" "rotate" "0,0" "0") (setvar "snapmode" 0) ;;;;Draw projected line (command "linetype" "set" "dot" "" "color" "green" "line" d2 ad5 "" "line" p7 ap6 "" "color" "white" "linetype" "set" "continuous" "") ;;;;Draw reinforced steel at rest step slab (setq dei (list (+(car s23) 1.5) (-(cadr s23) 2))) (setq rei (list (+(car s2) 1.5) (-(cadr s2) 2))) (command "donut" 0.01 1.2 dei rei"") (setq coun 1) (setq fz (list (car rei) (cadr rei))) (setq rin (/ sw 8)) (while (< coun rin) (setq pie (list (+(car rei) (* coun 8)) (cadr rei))) (command "COPY" "last" "" fz pie "") (setq fz (list (car pie) (cadr pie))) (setq coun (1+ coun)) ) (setq tei (list (+(car as2) 1.5) (-(cadr as2) 2))) (command "donut" 0.01 1.2 tei "") (setq cou 1) (setq tz (list (car tei) (cadr tei))) (setq rin (/ sw 8)) (while (< cou rin) (setq sie (list (+(car tei) (* cou 8)) (cadr tei))) (command "COPY" "last" "" tz sie "") (setq tz (list (car sie) (cadr sie))) (setq cou (1+ cou)) ) (setq deia (list (car dei) (+(cadr dei) 0.7))) (setq deib (list (+(car deia) 1.5) (cadr deia))) (setq deic (list (car deia) (-(cadr deia) 1.4))) (setq dp7c (list (car 2p7) (cadr deic))) (setq dp7a (list (car dp7c) (+(cadr dp7c) 1.4))) (setq dp7b (list (-(car dp7a) 1.5) (cadr dp7a))) (command "pline" deib deia "a" deic "l" dp7c "a" dp7a "l" dp7b "") (setq teia (list (car tei) (+(cadr tei) 0.7))) (setq teib (list (+(car teia) 1.5) (cadr teia))) (setq teic (list (car teia) (-(cadr teia) 1.4))) (setq tp7c (list (car 2ap7) (cadr teic))) (setq tp7a (list (car tp7c) (+(cadr tp7c) 1.4))) (setq tp7b (list (-(car tp7a) 1.5) (cadr tp7a))) (command "pline" teib teia "a" teic "l" tp7c "a" tp7a "l" tp7b "") ;;;;Draw step section (setq tp1 (list (+(car ap7) 60) (+(cadr ap7) 40))) (setq tp2 (list (+(car tp1) bw bw) (cadr tp1))) (setq tp3 (list (car tp2) (+(cadr tp2) bh bh))) (setq tp4 (list (car tp1) (cadr tp3))) (setq ttv (- sw bw)) (setq tp5 (list (+(car tp3) ttv) (cadr tp3))) (setq tp6 (list (car tp5) (+(cadr tp5) st st))) (setq tp7 (list (-(car tp6) sw sw) (cadr tp6))) (setq tp8 (list (car tp7) (cadr tp4))) (command "pline" tp1 tp2 tp3 tp5 tp6 tp7 tp8 tp4 tp1 "") ;;;;Draw reinforced steel for step section (setq sp1 (list (+(car tp1) 6) (+(cadr tp1) 6))) (setq sp2 (list (-(car tp2) 6) (cadr sp1))) (setq sp3 (list (car sp2) (-(cadr tp3) 6))) (setq sp4 (list (car sp1) (cadr sp3))) (setq 2f (* 2 f)) (command "donut" 0.01 2f sp1 "" "donut" 0.01 2f sp2 "" "donut" 0.01 2f sp3 "" "donut" 0.01 2f sp4 "") (setq sp7 (list (+(car tp7) 4) (-(cadr tp7) 4))) (command "donut" 0.01 1.6 sp7 "") (setq tv (list (car sp7) (cadr sp7))) (setq riu (/ sw 8)) (setq rii (fix riu)) (setq ti (/ (- (* 2 sw) 8) rii)) (setq coutx 1) (while (<= coutx rii) (setq tn (list (+(car sp7) (* coutx ti)) (cadr sp7))) (command "COPY" "last" "" tv tn "") (setq tv (list (car tn) (cadr tn))) (setq coutx (1+ coutx)) ) (setq sp7a (list (car sp7) (+(cadr sp7) 0.9))) (setq sp7b (list (car sp7a) (-(cadr sp7a) 1.8))) (setq sp7c (list (+(car sp7b) 2) (cadr sp7b))) (setq sp7d (list (car sp3) (cadr sp7a))) (setq sp7e (list (+(car sp7d) 2.4) (-(cadr sp7d) 2.4))) (setq sp7f (list (car sp7e) (+(cadr sp2) 8))) (setq sp7g (list (-(car sp7f) 1.8) (cadr sp7f))) (setq sp7h (list (car sp7g) (+(cadr sp7g) 2))) (command "pline" sp7c sp7b "a" sp7a "l" sp7d "a" sp7e "l" sp7f "a" sp7g "l" sp7h "") (setq sp6a (list (-(car tp6) 4) (-(cadr tp6) 3.1))) (setq sp6b (list (car sp6a) (-(cadr sp6a) 1.8))) (setq sp6c (list (-(car sp6b) 2) (cadr sp6b))) (setq sp6d (list (car sp4) (cadr sp6a))) (setq sp6e (list (-(car sp6d) 2.4) (-(cadr sp6d) 2.4))) (setq sp6f (list (car sp6e) (+(cadr sp1) 8))) (setq sp6g (list (+(car sp6f) 1.8) (cadr sp6f))) (setq sp6h (list (car sp6g) (+(cadr sp6g) 2))) (command "pline" sp6c sp6b "a" sp6a "l" sp6d "a" sp6e "l" sp6f "a" sp6g "l" sp6h "") ;;;;Draw stirrup for step section (setq sp1a (list (car sp1) (-(cadr sp1) b b))) (setq sp1b (list (-(car sp1a) b b) (cadr sp1))) (setq sp4a (list (car sp4) (+(cadr sp4) b b))) (setq sp4b (list (-(car sp4) b b) (cadr sp4))) (setq sp41 (list (+(car sp4) e e) (+(cadr sp4) e e))) (setq sp42 (list (-(car sp4) e e) (-(cadr sp4) e e))) (setq sp43 (list (+(car sp41) 4) (-(cadr sp41) 4))) (setq sp44 (list (+(car sp42) 4) (-(cadr sp42) 4))) (setq sp2a (list (car sp2) (-(cadr sp2) b b))) (setq sp2b (list (+(car sp2) b b) (cadr sp2))) (setq sp3a (list (car sp3) (+(cadr sp3) b b))) (setq sp3b (list (+(car sp3) b b) (cadr sp3))) (command "line" sp1a sp2a "" "line" sp2b sp3b "" "line" sp3a sp4a "" "line" sp4b sp1b "" "line" sp41 sp43 "" "line" sp42 sp44 "") ;;;;Draw step transverse section (setq xra (list (/(+(car tp2) (car tp1)) 2) (-(cadr ap6) 10))) (setq xr1 (list (-(car xra) tw 3) (cadr xra))) (setq xr2 (list (+(car xra) tw 3) (cadr xr1))) (setq xr3 (list (car xr2) (+(cadr xr2) st st))) (setq xr4 (list (car xr1) (cadr xr3))) (command "pline" xr1 xr2 xr3 xr4 xr1 "") (setq xr44 (list (+(car xr4) 4) (-(cadr xr4) 4))) (command "donut" 0.01 1.6 xr44 "") (setq it (/(-(* 2 tw) 2) 4)) (setq cut 1) (setq tj (list (car xr44) (cadr xr44))) (while (< cut 5) (setq vn (list (+(car xr44) (* cut it)) (cadr xr44))) (command "COPY" "last" "" tj vn "") (setq tj (list (car vn) (cadr vn))) (setq cut (1+ cut)) ) (setq xr4a (list (car xr44) (-(cadr xr44) 0.9))) (setq xr4b (list (car xr4a) (+(cadr xr4a) 1.8))) (setq xr4c (list (+(car xr4b) 2) (cadr xr4b))) (setq xr3a (list (-(car xr3) 4) (-(cadr xr3) 4.9))) (setq xr3b (list (car xr3a) (+(cadr xr3a) 1.8))) (setq xr3c (list (-(car xr3b) 2) (cadr xr3b))) (command "pline" xr4c xr4b "a" xr4a "l" xr3a "a" xr3b "l" xr3c "") ;;;;Dimension (setq dm1 (list (-(car pb) 14) (/(+(cadr pb) (cadr pa)) 2))) (setq dm2 (list (/(+(car pd)(car pb)) 2) (-(cadr pb) 14))) (setq md3 (list (car as2) (cadr ac3))) (setq dm3 (list (/(+(car ap8)(car as2)) 2) (+ (cadr md3) 14))) (setq md3a (list (car s2) (cadr c3))) (setq dm3a (list (/(+(car p8)(car s2)) 2) (+ (cadr md3a) 14))) (setq dm4 (list (/(+(car ap7)(car ap8)) 2) (+(cadr ap8) 14))) (setq dm5 (list (+(car p6) 14) (/(+(cadr p6) (cadr p7)) 2))) (setq dm6 (list (+(car ap6) 14) (/(+(cadr ap6) (cadr ap7)) 2))) (setq dm7 (list (/(+(car p5)(car p6)) 2) (-(cadr p6) 14))) (setq dm8 (list (/(+(car ac5)(car ap5)) 2) (-(cadr ap5) 14))) (setq dm9 (list (/(+(car s26)(car p5)) 2) (-(cadr p5) 14))) (setq dm10 (list (/(+(car ad1)(car ad2)) 2) (+(cadr ad1) 14))) (setq dm11 (list (-(car ad2) 14) (/(+(cadr ad2) (cadr ad3)) 2))) (setq dm12 (list (-(car ad3) 14) (/(+(cadr ad3) (cadr ad5)) 2))) (setq d2h (list (-(car d2) 6) (cadr d2))) (setq dm13 (list (-(car pa) 28) (/(+(cadr pa) (cadr d2h)) 2))) (setq md14 (list (car md3) (+(cadr md3) 60))) (setq dm14 (list (/(+(car ad1) (car md14)) 2) (+(cadr ad1) 14))) (setq md15 (list (car ac4) (+(cadr ac4) hh))) (setq dm15 (list (/(+(car ac3) (car md15)) 2) (+(cadr md15) 14))) (setq md16 (list (-(+(car md15) 3) tw tw) (+(cadr md15) hh hh))) (setq md16a (list (-(car md16) tw 3) (+(cadr md16) hh))) (setq dm16 (list (/(+(car md16) (car md16a)) 2) (+(cadr md16a) 14))) (setq md17 (list (+(car md16a) 6) (cadr md16a))) (setq dm17 (list (+(car md16) 14) (/(+(cadr md16) (cadr md17)) 2))) (setq md18 (list (-(+(car s23) 3) tw tw tw) (-(cadr s23) hh hh hh))) (setq md18a (list (-(car md18) tw 3) (-(cadr md18) hh))) (setq dm18 (list (/(+(car md18) (car md18a)) 2) (+(cadr md18) 14))) (setq md19 (list (-(car md18) 6) (cadr md18))) (setq dm19 (list (-(car md18a) 14) (/(+(cadr md18) (cadr md18a)) 2))) (setq md20 (list (-(car md18a) tw) (-(cadr md18a) hh))) (setq md20a (list (-(car md20) tw) (-(cadr md20) hh))) (setq dm20 (list (/(+(car md20) (car md20a)) 2) (+(cadr md20) 14))) (setq md21 (list (+(car ad1) tw 3) (-(cadr ad1) hh))) (setq md21a (list (car md21) (-(cadr md21) st))) (setq dm21 (list (+(car md21) 14) (/(+(cadr md21) (cadr md21a)) 2))) (setq md22 (list (+(-(car p33) 3) tw) (+(cadr p33) hh hh))) (setq md22a (list (car md22) (-(cadr md22) st))) (setq dm22 (list (-(car md22) 14) (/(+(cadr md22) (cadr md22a)) 2))) (setq md23 (list (-(car s23) 40) (cadr s23))) (setq dm23 (list (-(car pa) 14) (/(+(cadr pa) (cadr md23)) 2))) (setq dm23a (list (-(car pa) 14) (/(+(cadr d2h) (cadr md23)) 2))) (setq md24 (list (car s2) (-(cadr p5) 25))) (setq md24a (list (car p5) (cadr md24))) (setq dm24 (list (/(+(car md24) (car md24a)) 2) (-(cadr pd) 14))) (setq dm25 (list (/(+(car md24) (car pd)) 2) (-(cadr pd) 14))) (command "luprec" 1 "" "dim1" "ver" pb pa dm1 "" "dim1" "hor" pb pd dm2 "" "dim1" "hor" md3 ap8 dm3 "" "dim1" "hor" md3a p8 dm3a "" "dim1" "hor" ap8 ap7 dm4 "" "dim1" "ver" p6 p7 dm5 "" "dim1" "ver" ap6 ap7 dm6 "" "dim1" "hor" p5 p6 dm7 "" "dim1" "hor" ac5 ap5 dm8 "" "dim1" "hor" s26 p5 dm9 "" "dim1" "hor" ad2 ad1 dm10 "" "dim1" "ver" ad3 ad2 dm11 "" "dim1" "ver" ad5 ad3 dm12 "" "dim1" "ver" pa d2h dm13 "" "dim1" "hor" ad1 md14 dm14 "" "dim1" "hor" md15 md3 dm15 "" "dim1" "hor" md16a md16 dm16 "" "dim1" "ver" md16 md17 dm17 "" "dim1" "hor" md18a md18 dm18 "" "dim1" "ver" md18a md19 dm19 "" "dim1" "hor" md20a md20 dm20 "" "dim1" "ver" md21a md21 dm21 "" "dim1" "ver" md22a md22 dm22 "" "dim1" "ver" pa md23 dm23 "" "dim1" "ver" md23 d2h dm23a "" "dim1" "hor" md24 md24a dm24 "" "dim1" "hor" pd md24 dm25 "" ) (setq dm26 (list (/(+(car tp7) (car tp6)) 2) (+(cadr tp6) 14))) (setq dm27 (list (/(+(car tp1) (car tp2)) 2) (-(cadr tp1) 14))) (setq dm28 (list (-(car tp7) 14) (/(+(cadr tp7) (cadr tp8)) 2))) (setq dm29 (list (car xra) (+(cadr xr3) 14))) (setq dm30 (list (+(car xr3) 14) (/(+(cadr xr2) (cadr xr3)) 2))) (command "dimlfac" 0.5 "" "dim1" "hor" tp7 tp6 dm26 "" "dim1" "hor" tp1 tp2 dm27 "" "dim1" "ver" tp8 tp7 dm28 "" "dim1" "hor" xr4 xr3 dm29 "" "dim1" "ver" xr2 xr3 dm30 "" "dimlfac" 1 "") ;;;;Dtext for stair (setq sec (list (/(+(car pd)(car p5)) 2) (-(cadr pd) 30))) (setq rest (list (/(+(car as2)(car ap8)) 2) (+(cadr ac3) 44))) (setq main (list (/(+(car pd)(car p5)) 2) (-(cadr pd) 48))) (setq floor1 (list (-(car pa) 48) (cadr pa))) (setq floor2 (list (-(car d2) 48) (cadr d2))) (setq stepsec1 (list (car xra) (-(cadr tp2) 34))) (setq stepsec2 (list (car xra) (-(cadr xr1) 22))) (princ"\n Text at main section. ") (command "color" "m" "dtext" "j" "c" sec 7 0 ;Text (princ"\n Text at rest step. ") "dtext" "j" "c" rest 7 0 (princ"\n Text at 1st floor. ") "dtext" "j" "mr" floor1 7 0 (princ"\n Text at 2nd floor. ") "dtext" "j" "mr" floor2 7 0 (princ"\n Text at step longitudinal detail section. ") "dtext" "j" "c" stepsec1 7 0 (princ"\n Text at step transverse detail section. ") "dtext" "j" "c" stepsec2 7 0 (princ"\n Text for stair name. ") "dtext" "j" "c" main 9 0 "color" "white") (alert " ERASE or COPY Needed Entities Architect: BANH NGUYEN Copyright 1997 Thanks For Using This LISP File") (command "redraw") (princ"\n STAIR-A.LSP Draws Reinforced Concrete Stair. Start -> SAA")(princ) );defun SA1 ;Filename: STAIR-A2.LSP Draw Reinforced Concrete Stair. (c)1997. BANH NGUYEN (defun SA2 () (setvar "blipmode" 1) (setvar "dimscale" 26) (setvar "cmdecho" 0) ;(command "dim1" "save" "banh") (prompt"\n***** STAIR-A2.LSP Copyright 1997, Architect:BANH NGUYEN *****") (prompt"\n********** NEEDED to set LIMITS 1440 x 1080 or Larger **********\n") ;;;;Get information (setq p1 (getpoint"\n Pick Lower Left Beam Section Corner. ")) (setq sw (getdist"\n Stair Width in Centimeter <100>. . ? ")) (if (= sw nil)(setq sw 100)) (setq sh (getdist"\n Distance Floor to Floor in cm <300>? ")) (if (= sh nil)(setq sh 300)) (setq nu (getint"\n Even Amount of step <20> . . . . . ? ")) (if (= nu nil)(setq nu 20)) (setq st (getdist"\n Step thickness in Centimeter <6> . ? ")) (if (= st nil)(setq st 6)) (setq tw (getdist"\n Step Width in Centimeter <28>. . . ? ")) (if (= tw nil)(setq tw 28)) (setq bw (getdist"\n Beam Width in Centimeter <22>. . . ? ")) (if (= bw nil)(setq bw 22)) (setq bh (getdist"\n Beam Height in Centimeter <40> . . ? ")) (if (= bh nil)(setq bh 40)) ;;;;Draw lover concrete beam section (setq p2 (list (+(car p1) bw) (cadr p1))) (setq p3 (list (car p2) (+(cadr p2) bh))) (setq p4 (list (car p1) (cadr p3))) ;;;;Draw middle concrete beam section (setq sl (/ sh 2)) ;half height (setq ss (+ sl sw)) (setq num-step (/ nu 2)) (fix num-step) (setq hh (/ sl num-step)) (setq tww (* num-step tw)) (setq p5 (list (+(car p1) tww sw) (+(cadr p1) sl))) (setq p6 (list (+(car p5) bw) (cadr p5))) (setq p7 (list (car p6) (+(cadr p6) bh))) (setq p8 (list (car p5) (cadr p7))) (command "viewres" "" 20000 "") (command "pline" p5 p6 p7 p8 p5 "") ;;;;Array step (setq s2 (list (-(car p8) sw) (cadr p8))) (setq s23 (list (-(car s2) 2) (cadr s2))) (setq s22 (list (+(car s2) tw) (cadr s2))) (setq s21 (list (car s2) (-(cadr s2) hh))) (command "pline" s21 s23 s22 "") (setq count 1) (setq pw (list (car s22) (cadr s22))) (while (< count num-step) (setq pc (list (-(car s22) (* count tw)) (-(cadr s22) (* count hh)))) (command "COPY" "last" "" pw pc "") (setq pw (list (car pc) (cadr pc))) (setq count (1+ count)) ) ;;;;Draw stair beam (setq count2 (- count 1)) (setq p33 (list (-(car s21) (* count2 tw)) (-(cadr s21) (* count2 hh)))) (setq s26 (list (car s22) (cadr p5))) ;;;;Draw bottom beam section (setq pa (list (-(car p33) bw) (cadr p33))) (setq pb (list (car pa) (-(cadr pa) bh))) (setq pd (list (car p33) (cadr pb))) (command "pline" p33 pa pb pd p33 "" ;bottom beam section "line" s22 p8 "" "line" pd s26 p5 "") ;;;;Draw upper stair (setq c3 (list (+(car s2) 2) (+(cadr s2) hh))) (setq c4 (list (-(car c3) tw 2) (cadr c3))) (command "pline" s2 c3 c4 "") (setq count3 1) (setq pk (list (car s2) (cadr s2))) (while (< count3 num-step) (setq pn (list (-(car s2) (* count3 tw)) (+(cadr s2) (* count3 hh)))) (command "COPY" "last" "" pk pn "") (setq pk (list (car pn) (cadr pn))) (setq count3 (1+ count3)) ) ;;;;Draw upper stair beam (setq xx (/(*(- tw bw) hh) tw)) (setq d1 (list (car p33) (+(cadr p33) sh))) (setq d2 (list (-(car d1) bw) (cadr d1))) (setq d3 (list (car d2) (-(cadr d2) bh))) (setq d4 (list (car d1) (cadr d3))) (setq d5 (list (car d3) (-(cadr d3) xx))) (setq d6 (list (car d1) (-(cadr d1) hh))) (setq c5 (list (car s2) (-(cadr s2) bh))) (setq c6 (list (-(car c5) (* 1.1 tw)) (+(cadr c5) (* 1.1 hh)))) (command "pline" d2 d3 d4 d6 "" "line" d3 d5 c6 "" "color" "red" "ltscale" 20 "" "linetype" "set" "hidden2" "" "line" c6 c5 s26 "" "linetype" "set" "continuous" "" "color" "white") ;;;;Draw upper stair section (setq ap5 (list (car p5) (+(cadr p5) 120))) (setq ap6 (list (car p6) (cadr ap5))) (setq ap7 (list (car p6) (+(cadr ap6) bh))) (setq ap8 (list (car ap5) (cadr ap7))) (command "pline" ap5 ap6 ap7 ap8 ap5 "") (setq as2 (list (car s2) (+(cadr s2) 120))) (setq ac3 (list (car c3) (+(cadr c3) 120))) (setq ac4 (list (car c4) (+(cadr c4) 120))) (command "line" as2 ap8 "" "pline" as2 ac3 ac4 "") (setq count4 1) (setq apk (list (car as2) (cadr as2))) (while (< count4 num-step) (setq apn (list (-(car as2) (* count4 tw)) (+(cadr as2) (* count4 hh)))) (command "COPY" "last" "" apk apn "") (setq apk (list (car apn) (cadr apn))) (setq count4 (1+ count4)) ) (setq ad1 (list (car d1) (+(cadr d1) 120))) (setq ad2 (list (car d2) (+(cadr d2) 120))) (setq ad3 (list (car d3) (+(cadr d3) 120))) (setq ad4 (list (car d4) (+(cadr d4) 120))) (setq ad5 (list (car d5) (+(cadr d5) 120))) (setq ad6 (list (car d6) (+(cadr d6) 120))) (setq ac5 (list (car c5) (+(cadr c5) 120))) (Command "pline" ad2 ad3 ad4 ad6 "" "pline" ad3 ad5 ac5 ap5 "") ;;;;Draw bottom beam section with stirrup (setq b 1.066666) (setq e (* b 0.7071)) (setq f (* 2 b)) (setq 1p33 (list (-(car p33) 3) (-(cadr p33) 3))) (setq 1p33a (list (car 1p33) (+(cadr 1p33) b))) (setq 1p33b (list (+(car 1p33) b) (cadr 1p33))) (setq 1pa (list (+(car pa) 3) (cadr 1p33))) (setq 1paa (list (car 1pa) (+(cadr 1pa) b))) (setq 1pab (list (-(car 1pa) b) (cadr 1pa))) (setq 1pa1 (list (+(car 1pa) e) (+(cadr 1pa) e))) (setq 1pa2 (list (-(car 1pa) e) (-(cadr 1pa) e))) (setq 1pa3 (list (+(car 1pa1) 2) (-(cadr 1pa1) 2))) (setq 1pa4 (list (+(car 1pa2) 2) (-(cadr 1pa2) 2))) (setq 1pb (list (car 1pa) (+(cadr pb) 3))) (setq 1pba (list (car 1pb) (-(cadr 1pb) b))) (setq 1pbb (list (-(car 1pb) b) (cadr 1pb))) (setq 1pd (list (car 1p33) (cadr 1pb))) (setq 1pda (list (car 1pd) (-(cadr 1pd) b))) (setq 1pdb (list (+(car 1pd) b) (cadr 1pd))) (command "donut" 0.01 f 1p33 "" "donut" 0.01 f 1pa "" "donut" 0.01 f 1pb "" "donut" 0.01 f 1pd "" "line" 1p33a 1paa "" "line" 1pab 1pbb "" "line" 1pba 1pda "" "line" 1pdb 1p33b "" "line" 1pa1 1pa3 "" "line" 1pa2 1pa4 "") ;;;;Draw rest step beam section 1 with stirrup (setq 2p7 (list (-(car p7) 4) (-(cadr p7) 5.5))) (setq 2p7a (list (car 2p7) (+(cadr 2p7) b))) (setq 2p7b (list (+(car 2p7) b) (cadr 2p7))) (setq 2p8 (list (+(car p8) 3) (cadr 2p7))) (setq 2p8a (list (car 2p8) (+(cadr 2p8) b))) (setq 2p8b (list (-(car 2p8) b) (cadr 2p8))) (setq 2p81 (list (+(car 2p8) e) (+(cadr 2p8) e))) (setq 2p82 (list (-(car 2p8) e) (-(cadr 2p8) e))) (setq 2p83 (list (+(car 2p81) 2) (-(cadr 2p81) 2))) (setq 2p84 (list (+(car 2p82) 2) (-(cadr 2p82) 2))) (setq 2p5 (list (car 2p8) (+(cadr p5) 3))) (setq 2p5a (list (car 2p5) (-(cadr 2p5) b))) (setq 2p5b (list (-(car 2p5) b) (cadr 2p5))) (setq 2p6 (list (car 2p7) (cadr 2p5))) (setq 2p6a (list (car 2p6) (-(cadr 2p6) b))) (setq 2p6b (list (+(car 2p6) b) (cadr 2p6))) (command "donut" 0.01 f 2p7 "" "donut" 0.01 f 2p8 "" "donut" 0.01 f 2p5 "" "donut" 0.01 f 2p6 "" "line" 2p7a 2p8a "" "line" 2p8b 2p5b "" "line" 2p5a 2p6a "" "line" 2p6b 2p7b "" "line" 2p81 2p83 "" "line" 2p82 2p84 "") ;;;;Draw rest step beam section 2 with stirrup (setq 2ap7 (list (-(car ap7) 4) (-(cadr ap7) 5.5))) (setq 2ap7a (list (car 2ap7) (+(cadr 2ap7) b))) (setq 2ap7b (list (+(car 2ap7) b) (cadr 2ap7))) (setq 2ap8 (list (+(car ap8) 3) (cadr 2ap7))) (setq 2ap8a (list (car 2ap8) (+(cadr 2ap8) b))) (setq 2ap8b (list (-(car 2ap8) b) (cadr 2ap8))) (setq 2ap81 (list (+(car 2ap8) e) (+(cadr 2ap8) e))) (setq 2ap82 (list (-(car 2ap8) e) (-(cadr 2ap8) e))) (setq 2ap83 (list (+(car 2ap81) 2) (-(cadr 2ap81) 2))) (setq 2ap84 (list (+(car 2ap82) 2) (-(cadr 2ap82) 2))) (setq 2ap5 (list (car 2ap8) (+(cadr ap5) 3))) (setq 2ap5a (list (car 2ap5) (-(cadr 2ap5) b))) (setq 2ap5b (list (-(car 2ap5) b) (cadr 2ap5))) (setq 2ap6 (list (car 2ap7) (cadr 2ap5))) (setq 2ap6a (list (car 2ap6) (-(cadr 2ap6) b))) (setq 2ap6b (list (+(car 2ap6) b) (cadr 2ap6))) (command "donut" 0.01 f 2ap7 "" "donut" 0.01 f 2ap8 "" "donut" 0.01 f 2ap5 "" "donut" 0.01 f 2ap6 "" "line" 2ap7a 2ap8a "" "line" 2ap8b 2ap5b "" "line" 2ap5a 2ap6a "" "line" 2ap6b 2ap7b "" "line" 2ap81 2ap83 "" "line" 2ap82 2ap84 "") ;;;;Draw top beam section with stirrup (setq 1ad1 (list (-(car ad1) 3) (-(cadr ad1) 3))) (setq 1ad1a (list (car 1ad1) (+(cadr 1ad1) b))) (setq 1ad1b (list (+(car 1ad1) b) (cadr 1ad1))) (setq 1ad2 (list (+(car ad2) 3) (cadr 1ad1))) (setq 1ad2a (list (car 1ad2) (+(cadr 1ad2) b))) (setq 1ad2b (list (-(car 1ad2) b) (cadr 1ad2))) (setq 1ad21 (list (+(car 1ad2) e) (+(cadr 1ad2) e))) (setq 1ad22 (list (-(car 1ad2) e) (-(cadr 1ad2) e))) (setq 1ad23 (list (+(car 1ad21) 2) (-(cadr 1ad21) 2))) (setq 1ad24 (list (+(car 1ad22) 2) (-(cadr 1ad22) 2))) (setq 1ad3 (list (car 1ad2) (+(cadr ad3) 3))) (setq 1ad3a (list (car 1ad3) (-(cadr 1ad3) b))) (setq 1ad3b (list (-(car 1ad3) b) (cadr 1ad3))) (setq 1ad4 (list (car 1ad1) (cadr 1ad3))) (setq 1ad4a (list (car 1ad4) (-(cadr 1ad4) b))) (setq 1ad4b (list (+(car 1ad4) b) (cadr 1ad4))) (command "donut" 0.01 f 1ad1 "" "donut" 0.01 f 1ad2 "" "donut" 0.01 f 1ad3 "" "donut" 0.01 f 1ad4 "" "line" 1ad1a 1ad2a "" "line" 1ad2b 1ad3b "" "line" 1ad3a 1ad4a "" "line" 1ad4b 1ad1b "" "line" 1ad21 1ad23 "" "line" 1ad22 1ad24 "") ;;;;Draw beam longitudinal steel at rest step (setq i (/ f 4)) (setq aap7 (list (car 2p7) (+(cadr 2p7) 1.5))) (setq bp7 (list (+(car 2p7) 1.5) (cadr 2p7))) (setq aap6 (list (car bp7) (+(cadr 2p6) 7))) (setq bp6 (list (-(car aap6) 2) (cadr aap6))) (setq cp6 (list (car bp6) (+(cadr bp6) 2))) (setq cp7 (list (+(car s22) 3) (cadr aap7))) (setq ga (list (car 2p6) (+(cadr 2p6) 1.5))) (setq gb (list (car ga) (+(cadr ga) 2))) (setq gc (list (-(car ga) 2) (cadr gb))) (setq ja (list (-(car s2) (* 1.8 tw)) (cadr ga))) (setq jb (list (car ja) (-(cadr ja) 2))) (setq jc (list (+(car jb) 2) (cadr jb))) (command "pline" gc "w" i i gb "a" ga "l" ja "a" jb "l" jc "") (setq kap7 (list (car 2ap7) (+(cadr 2ap7) 1.5))) (setq kbp7 (list (+(car 2ap7) 1.5) (cadr 2ap7))) (setq kap6 (list (car kbp7) (+(cadr 2ap6) 7))) (setq kbp6 (list (-(car kap6) 2) (cadr kap6))) (setq kcp6 (list (car kbp6) (+(cadr kbp6) 2))) (setq kcp7 (list (-(car as2) (* 1.8 tw)) (cadr kap7))) (setq kdp7 (list (car kcp7) (-(cadr kcp7) 2))) (setq kep7 (list (+(car kdp7) 2) (cadr kdp7))) (command "pline" kcp6 kbp6 "a" kap6 "l" kbp7 "a" kap7 "l" kcp7 "a" kdp7 "l" kep7 "") ;;;;Draw beam longitudinal steel from rest step to top (setq uga (list (car 2ap6) (+(cadr 2ap6) 1.5))) (setq ugb (list (car uga) (+(cadr uga) 2))) (setq ugc (list (-(car uga) 2) (cadr ugb))) (setq uja (list (+(car ac5) 3) (cadr uga))) (setq ujb (list (-(car ac5) 3) (+(cadr uja) 1))) (setq ujc (list (car 1ad3) (+(cadr ad5) 1.7))) (setq ujd (list (-(car 1ad3) 1.5) (+(cadr ad5) 4))) (setq uje (list (car ujd) (+(cadr 1ad3) 7))) (setq ujf (list (+(car uje) 2) (cadr uje))) (setq ujg (list (car ujf) (-(cadr ujf) 2))) (command "pline" ugc ugb "a" uga "l" uja "a" ujb "l" ujc "a" ujd "l" uje "a" ujf "l" ujg "") (setq x1 (/(* tw bh) hh)) (setq x2 (- x1 10)) (setq x3 (- x1 12.6)) (setq nt1 (list (car 1ad2) (-(cadr 1ad2) 5.357143))) (setq nt2 (list (car uje) (-(cadr nt1) 1))) (setq nt3 (list (car nt2) (+(cadr uje) 5))) (setq nt4 (list (+(car nt3) 2) (cadr nt3))) (setq nt5 (list (car nt4) (+(cadr nt4) 2))) (setq tn1 (list (+(car ac5) x3) (cadr uga))) (setq tn2 (list (+(car tn1) 1) (+(cadr tn1) 2))) (setq tn3 (list (-(car tn2) 2) (+(cadr tn2) 1))) (command "pline" nt5 nt4 "a" nt3 "l" nt2 "a" nt1 "l" tn1 "a" tn2 "l" tn3 "") ;;;;Draw beam longitudinal steel from bottom to rest step (setq qa (list (car 1pb) (+(cadr 1pb) 1.5))) (setq qb (list (car qa) (+(cadr qa) 2))) (setq qc (list (+(car qb) 2) (cadr qb))) (setq qd (list (+(car pd) 1) (cadr qa))) (setq qe (list (+(car qd) 2.5) (+(cadr qd) 0.8))) (setq ka (list (+(car s22) x2) (cadr cp7))) (setq kb (list (+(car ka) 1.3) (-(cadr ka) 1.3))) (setq kc (list (-(car ka) 0.6) (-(cadr ka) 2.6))) (command "pline" qc qb "a" qa "l" qd "a" qe "l" ka "a" kb "l" kc "") (setq y (-(car 1p33) (car 1pa))) (setq x (/(* hh y) tw)) (setq r1 (list (+(car 1pa) 1) (-(cadr 1pa) x 1.2))) (setq r2 (list (-(car r1) 1.5) (-(cadr r1) 2.5))) (setq ra (list (car r2) (+(cadr qb) 3))) (setq rb (list (+(car ra) 2) (cadr ra))) (setq rc (list (car rb) (+(cadr rb) 2))) (setq e1 (list (-(car s22) 1.5) (-(cadr cp7) 1.5))) (command "pline" rc rb "a" ra "l" r2 "a" r1 "l" e1 "a" cp7 "l" aap7 "a" bp7 "l" aap6 "a" bp6 "l" cp6 "w" 0 0 "") (setq s27 (list (+(car s26) 3.909740) (cadr ja))) (setq s28 (list (-(car e1) 9.105915) (-(cadr e1) 5.365599))) (setq s29 (list (car 1p33b) (-(cadr 1p33b) 1.2))) (setq s30 (list (+(car qe) 9.333978) (+(cadr qe) 5.517337))) (setq ax (angtos (angle r1 e1))) (command "line" s29 s30 "") (setq fg (/(-(car s28) (car s29)) 50)) (fix fg) (setq count6 0) (while (< count6 fg) (setq nx (+ 5 (/ count6 0.28))) (command "snap" "rotate" "0,0" ax) (setvar "snapmode" 0) (command "array" "last" "" "R" 1 3 nx "") (setq count6 (1+ count6)) );while ;Draw stirrup (command "line" s27 s28 "") (setq count7 0) (while (< count7 fg) (setq nx (+ 5 (/ count7 0.28))) (command "snap" "rotate" "0,0" ax) (setvar "snapmode" 0) (setq nxx (- nx)) (command "array" "last" "" "R" 1 3 nxx "") (setq count7 (1+ count7)) );while ;Draw stirrup (command "snap" "rotate" "0,0" "0") (setvar "snapmode" 0) ;;;;Draw longitudinal beam stirrup at rest step, beam 1 (setq st1 (list (car p8) (cadr aap7))) (setq st2 (list (car st1) (cadr ga))) (command "line" st1 st2 "") (setq ma (/ sw 30)) (fix ma) (setq count5 0) (while (< count5 ma) (setq nv (+ 5 (/ count5 0.28))) (setq nvv (- nv)) (command "array" "last" "" "R" 1 3 nvv "") (setq count5 (1+ count5)) );while ;Draw stirrup ;;;;Draw longitudinal beam stirrup at rest step, beam 2 (setq ts1 (list (car ap8) (cadr kap7))) (setq ts2 (list (car ts1) (cadr uga))) (command "line" ts1 ts2 "") (setq ma1 (+ 1 ma)) (setq count8 0) (while (< count8 ma1) (setq nv1 (+ 5 (/ count8 0.28))) (setq nv2 (- nv1)) (command "array" "last" "" "R" 1 3 nv2 "") (setq count8 (1+ count8)) );while ;Draw stirrup ;;;;Draw longitudinal beam stirrup, beam 2 (setq bt1 (list (car 1ad1b) (-(cadr 1ad1b) 15.8))) (setq bt2 (list (+(car ujc) 1.795748) (-(cadr ujc) 1.067173))) (setq tb1 (list (+(car as2) 11.778684) (-(cadr as2) 9.838666))) (command "line" bt1 bt2 "") (setq az (angtos (angle ujc ujb))) (setq count9 0) (while (< count9 fg) (setq nz (+ 5 (/ count9 0.28))) (command "snap" "rotate" "0,0" az) (setvar "snapmode" 0) (command "array" "last" "" "R" 1 3 nz "") (setq count9 (1+ count9)) );while ;Draw stirrup (command "line" ujb tb1 "") (setq counta 0) (while (< counta fg) (setq ny (+ 5 (/ counta 0.28))) (command "snap" "rotate" "0,0" az) (setvar "snapmode" 0) (setq nyy (- ny)) (command "array" "last" "" "R" 1 3 nyy "") (setq counta (1+ counta)) );while ;Draw stirrup (command "snap" "rotate" "0,0" "0") (setvar "snapmode" 0) ;;;;Draw projected line (command "linetype" "set" "dot" "" "color" "green" "line" d2 ad5 "" "line" p7 ap6 "" "color" "white" "linetype" "set" "continuous" "") ;;;;Draw reinforced steel at rest step slab (setq rei (list (+(car s2) 1.5) (-(cadr s2) 2))) (command "donut" 0.01 1.2 rei"") (setq coun 1) (setq fz (list (car rei) (cadr rei))) (setq rin (/ sw 8)) (while (< coun rin) (setq pie (list (+(car rei) (* coun 8)) (cadr rei))) (command "COPY" "last" "" fz pie "") (setq fz (list (car pie) (cadr pie))) (setq coun (1+ coun)) ) (setq tei (list (+(car as2) 1.5) (-(cadr as2) 2))) (command "donut" 0.01 1.2 tei "") (setq cou 1) (setq tz (list (car tei) (cadr tei))) (setq rin (/ sw 8)) (while (< cou rin) (setq sie (list (+(car tei) (* cou 8)) (cadr tei))) (command "COPY" "last" "" tz sie "") (setq tz (list (car sie) (cadr sie))) (setq cou (1+ cou)) ) (setq reia (list (car rei) (+(cadr rei) 0.7))) (setq reib (list (+(car reia) 1.5) (cadr reia))) (setq reic (list (car reia) (-(cadr reia) 1.4))) (setq dp7c (list (car 2p7) (cadr reic))) (setq dp7a (list (car dp7c) (+(cadr dp7c) 1.4))) (setq dp7b (list (-(car dp7a) 1.5) (cadr dp7a))) (command "pline" reib reia "a" reic "l" dp7c "a" dp7a "l" dp7b "") (setq teia (list (car tei) (+(cadr tei) 0.7))) (setq teib (list (+(car teia) 1.5) (cadr teia))) (setq teic (list (car teia) (-(cadr teia) 1.4))) (setq tp7c (list (car 2ap7) (cadr teic))) (setq tp7a (list (car tp7c) (+(cadr tp7c) 1.4))) (setq tp7b (list (-(car tp7a) 1.5) (cadr tp7a))) (command "pline" teib teia "a" teic "l" tp7c "a" tp7a "l" tp7b "") ;;;;Draw step section (setq tp1 (list (+(car ap7) 80) (+(cadr ap7) 15))) (setq tp2 (list (+(car tp1) bw bw) (cadr tp1))) (setq tp3 (list (car tp2) (+(cadr tp2) bh bh))) (setq tp4 (list (car tp1) (cadr tp3))) (setq ttv (- sw bw)) (setq tp5 (list (+(car tp3) ttv) (cadr tp3))) (setq tp6 (list (car tp5) (+(cadr tp5) st st))) (setq tp7 (list (-(car tp6) sw sw) (cadr tp6))) (setq tp8 (list (car tp7) (cadr tp4))) (setq tpm (list (car tp6) (+(cadr tp6) hh hh))) (setq tpn (list (car tp7) (cadr tpm))) (command "pline" tp4 tp1 tp2 tp3 tp5 tp6 tp7 tp8 tp4 "" "color" "r" "pline" tp6 tpm tpn tp7 "" "color" "w") ;;;;Draw reinforced steel for step section (setq sp1 (list (+(car tp1) 6) (+(cadr tp1) 6))) (setq sp2 (list (-(car tp2) 6) (cadr sp1))) (setq sp3 (list (car sp2) (-(cadr tp3) 6))) (setq sp4 (list (car sp1) (cadr sp3))) (setq 2f (* 2 f)) (command "donut" 0.01 2f sp1 "" "donut" 0.01 2f sp2 "" "donut" 0.01 2f sp3 "" "donut" 0.01 2f sp4 "") (setq sp7 (list (+(car tp7) 4) (-(cadr tp7) 4))) (command "donut" 0.01 1.6 sp7 "") (setq tv (list (car sp7) (cadr sp7))) (setq riu (/ sw 8)) (setq rii (fix riu)) (setq ti (/ (- (* 2 sw) 8) rii)) (setq coutx 1) (while (<= coutx rii) (setq tn (list (+(car sp7) (* coutx ti)) (cadr sp7))) (command "COPY" "last" "" tv tn "") (setq tv (list (car tn) (cadr tn))) (setq coutx (1+ coutx)) ) (setq sp7a (list (car sp7) (+(cadr sp7) 0.9))) (setq sp7b (list (car sp7a) (-(cadr sp7a) 1.8))) (setq sp7c (list (+(car sp7b) 2) (cadr sp7b))) (setq sp7d (list (car sp3) (cadr sp7a))) (setq sp7e (list (+(car sp7d) 2.4) (-(cadr sp7d) 2.4))) (setq sp7f (list (car sp7e) (+(cadr sp2) 8))) (setq sp7g (list (-(car sp7f) 1.8) (cadr sp7f))) (setq sp7h (list (car sp7g) (+(cadr sp7g) 2))) (command "pline" sp7c sp7b "a" sp7a "l" sp7d "a" sp7e "l" sp7f "a" sp7g "l" sp7h "") (setq sp6a (list (-(car tp6) 4) (-(cadr tp6) 3.1))) (setq sp6b (list (car sp6a) (-(cadr sp6a) 1.8))) (setq sp6c (list (-(car sp6b) 2) (cadr sp6b))) (setq sp6d (list (car sp4) (cadr sp6a))) (setq sp6e (list (-(car sp6d) 2.4) (-(cadr sp6d) 2.4))) (setq sp6f (list (car sp6e) (+(cadr sp1) 8))) (setq sp6g (list (+(car sp6f) 1.8) (cadr sp6f))) (setq sp6h (list (car sp6g) (+(cadr sp6g) 2))) (command "pline" sp6c sp6b "a" sp6a "l" sp6d "a" sp6e "l" sp6f "a" sp6g "l" sp6h "") ;;;;Draw stirrup for step section (setq sp1a (list (car sp1) (-(cadr sp1) b b))) (setq sp1b (list (-(car sp1a) b b) (cadr sp1))) (setq sp4a (list (car sp4) (+(cadr sp4) b b))) (setq sp4b (list (-(car sp4) b b) (cadr sp4))) (setq sp41 (list (+(car sp4) e e) (+(cadr sp4) e e))) (setq sp42 (list (-(car sp4) e e) (-(cadr sp4) e e))) (setq sp43 (list (+(car sp41) 4) (-(cadr sp41) 4))) (setq sp44 (list (+(car sp42) 4) (-(cadr sp42) 4))) (setq sp2a (list (car sp2) (-(cadr sp2) b b))) (setq sp2b (list (+(car sp2) b b) (cadr sp2))) (setq sp3a (list (car sp3) (+(cadr sp3) b b))) (setq sp3b (list (+(car sp3) b b) (cadr sp3))) (command "line" sp1a sp2a "" "line" sp2b sp3b "" "line" sp3a sp4a "" "line" sp4b sp1b "" "line" sp41 sp43 "" "line" sp42 sp44 "") ;;;;Draw step transverse section (setq xrr (list (/(+(car tp2) (car tp1)) 2) (-(cadr ap6) 55))) (setq xr1 (list (-(car xrr) tw 2) (cadr xrr))) (setq xr2 (list (+(car xrr) tw 2) (cadr xrr))) (setq xr3 (list (+(car xr1) 4) (+(cadr xr1) hh hh))) (setq xr4 (list (-(car xr2) 4) (-(cadr xr2) hh hh))) (setq cx (/(* 4 st) hh)) (setq xc (sqrt (+(/(* 16 st st) (* hh hh)) (* 4 st st)))) (setq xr5 (list (-(car xr3) xc 4 10 cx) (cadr xr3))) (setq xr6 (list (car xr5) (-(cadr xr5) st st))) (setq xr7 (list (+(car xr6) 10) (-(cadr xr1) st st))) (setq xr8 (list (+(car xr7) tw tw 4) (cadr xr7))) (setq xr9 (list (-(car xr8) 4) (-(cadr xr4) st st))) (setq xra (list (+(car xr2) 10) (cadr xr4))) (setq xrb (list (car xra) (cadr xr9))) (setq xrc (list (+(car xr6) 4 10) (cadr xr6))) (setq xr51 (list (car xr5) (+(cadr xr5) 6))) (setq xr5a (list (car xr51) (-(cadr xr5) 5.8))) (setq xr5b (list (-(car xr5a) 0.8) (cadr xr5a))) (setq xr61 (list (car xr6) (-(cadr xr6) 6))) (setq xr6a (list (car xr61) (+(cadr xr6) 5.8))) (setq xr6b (list (+(car xr6a) 0.8) (cadr xr6a))) (setq xra1 (list (car xra) (+(cadr xra) 6))) (setq xraa (list (car xra1) (-(cadr xra) 5.8))) (setq xrab (list (-(car xraa) 0.8) (cadr xraa))) (setq xrb1 (list (car xrb) (-(cadr xrb) 6))) (setq xrba (list (car xrb1) (+(cadr xrb) 5.8))) (setq xrbb (list (+(car xrba) 0.8) (cadr xrba))) (command "line" xr5 xr3 xr1 xr2 xr4 xra "" "line" xr6 xrc xr7 xr8 xr9 xrb "" "line" xr51 xr5a xr5b xr6b xr6a xr61 "" "line" xra1 xraa xrab xrbb xrba xrb1 "") ;;;;Draw reinforced steel for step transverse section (setq xr11 (list (-(car xr1) 4) (-(cadr xr1) 4))) (command "donut" 0.01 1.6 xr11 "") (setq it (/(+(* 2 tw) 4) 4)) ;(setq it (/(-(* 2 tw) 8) 4)) (setq cut1 1) (setq tj (list (car xr11) (cadr xr11))) (while (< cut1 5) (setq vn (list (+(car xr11) (* cut1 it)) (cadr xr11))) (command "COPY" "last" "" tj vn "") (setq tj (list (car vn) (cadr vn))) (setq cut1 (1+ cut1)) ) (setq xr41 (list (-(car xr4) 4) (-(cadr xr4) 4))) (setq xr42 (list (+(car xr41) 2) (+(cadr xr41) hh))) (setq xr43 (list (+(car xr41) it) (cadr xr41))) (setq xr31 (list (-(car xr3) 4) (-(cadr xr3) 4))) (setq xr32 (list (-(car xr31) 2) (-(cadr xr31) hh))) (setq xr33 (list (-(car xr31) it) (cadr xr31))) (command "donut" 0.01 1.6 xr41 xr42 xr43 xr31 xr32 xr33 "") (setq xru1 (list (car xr5) (-(cadr xr5) 5))) (setq xru2 (list (-(car xr31) 2) (-(cadr xr31) 1))) (setq xru3 (list (+(car xru2) 1) (-(cadr xru2) 1))) (setq xru4 (list (-(car xr11) 1) (cadr xr11))) (setq xru5 (list (car xr11) (-(cadr xr11) 1))) (setq xru6 (list (-(car xr2) 6) (-(cadr xr2) 5))) (setq xru7 (list (+(car xru6) 1) (-(cadr xru6) 1))) (setq xru8 (list (-(car xr41) 1) (cadr xr41))) (setq xru9 (list (car xr41) (-(cadr xr41) 1))) (setq xru0 (list (car xra) (-(cadr xra) 5))) (command "pline" xru1 xru2 "a" xru3 "l" xru4 "a" xru5 "l" xru6 "a" xru7 "l" xru8 "a" xru9 "l" xru0 "") ;;;;Dimension (setq dm1 (list (-(car pb) 14) (/(+(cadr pb) (cadr pa)) 2))) (setq dm2 (list (/(+(car pd)(car pb)) 2) (-(cadr pb) 14))) (setq md3 (list (car as2) (cadr ac3))) (setq dm3 (list (/(+(car ap8)(car as2)) 2) (+ (cadr md3) 14))) (setq md3a (list (car s2) (cadr c3))) (setq dm3a (list (/(+(car p8)(car s2)) 2) (+ (cadr md3a) 14))) (setq dm4 (list (/(+(car ap7)(car ap8)) 2) (+(cadr ap8) 14))) (setq dm5 (list (+(car p6) 14) (/(+(cadr p6) (cadr p7)) 2))) (setq dm6 (list (+(car ap6) 14) (/(+(cadr ap6) (cadr ap7)) 2))) (setq dm7 (list (/(+(car p5)(car p6)) 2) (-(cadr p6) 14))) (setq dm8 (list (/(+(car ac5)(car ap5)) 2) (-(cadr ap5) 14))) (setq dm9 (list (/(+(car s26)(car p5)) 2) (-(cadr p5) 14))) (setq dm10 (list (/(+(car ad1)(car ad2)) 2) (+(cadr ad1) 14))) (setq dm11 (list (-(car ad2) 14) (/(+(cadr ad2) (cadr ad3)) 2))) (setq dm12 (list (-(car ad3) 14) (/(+(cadr ad3) (cadr ad5)) 2))) (setq d2h (list (-(car d2) 6) (cadr d2))) (setq dm13 (list (-(car pa) 28) (/(+(cadr pa) (cadr d2h)) 2))) (setq md14 (list (car md3) (+(cadr md3) 60))) (setq dm14 (list (/(+(car ad1) (car md14)) 2) (+(cadr ad1) 14))) (setq md15 (list (car ac4) (+(cadr ac4) hh))) (setq dm15 (list (/(+(car ac3) (car md15)) 2) (+(cadr md15) 14))) (setq md16 (list (-(+(car md15) 2) tw tw) (+(cadr md15) hh hh))) (setq md16a (list (-(car md16) tw 2) (+(cadr md16) hh))) (setq dm16 (list (/(+(car md16) (car md16a)) 2) (+(cadr md16a) 14))) (setq md17 (list (+(car md16a) 6) (cadr md16a))) (setq dm17 (list (+(car md16) 14) (/(+(cadr md16) (cadr md17)) 2))) (setq md18 (list (-(+(car s23) 2) tw tw tw) (-(cadr s23) hh hh hh))) (setq md18a (list (-(car md18) tw 2) (-(cadr md18) hh))) (setq dm18 (list (/(+(car md18) (car md18a)) 2) (+(cadr md18) 14))) (setq md19 (list (-(car md18) 6) (cadr md18))) (setq dm19 (list (-(car md18a) 14) (/(+(cadr md18) (cadr md18a)) 2))) (setq md20 (list (-(car md18a) tw) (-(cadr md18a) hh))) (setq md20a (list (-(car md20) tw) (-(cadr md20) hh))) (setq dm20 (list (/(+(car md20) (car md20a)) 2) (+(cadr md20) 14))) (setq md23 (list (-(car s23) 40) (cadr s23))) (setq dm23 (list (-(car pa) 14) (/(+(cadr pa) (cadr md23)) 2))) (setq dm23a (list (-(car pa) 14) (/(+(cadr d2h) (cadr md23)) 2))) (setq md24 (list (car s2) (-(cadr p5) 25))) (setq md24a (list (car p5) (cadr md24))) (setq dm24 (list (/(+(car md24) (car md24a)) 2) (-(cadr pd) 14))) (setq dm25 (list (/(+(car md24) (car pd)) 2) (-(cadr pd) 14))) (command "luprec" 1 "" "dim1" "ver" pb pa dm1 "" "dim1" "hor" pb pd dm2 "" "dim1" "hor" md3 ap8 dm3 "" "dim1" "hor" md3a p8 dm3a "" "dim1" "hor" ap8 ap7 dm4 "" "dim1" "ver" p6 p7 dm5 "" "dim1" "ver" ap6 ap7 dm6 "" "dim1" "hor" p5 p6 dm7 "" "dim1" "hor" ac5 ap5 dm8 "" "dim1" "hor" s26 p5 dm9 "" "dim1" "hor" ad2 ad1 dm10 "" "dim1" "ver" ad3 ad2 dm11 "" "dim1" "ver" ad5 ad3 dm12 "" "dim1" "ver" pa d2h dm13 "" "dim1" "hor" ad1 md14 dm14 "" "dim1" "hor" md15 md3 dm15 "" "dim1" "hor" md16a md16 dm16 "" "dim1" "ver" md16 md17 dm17 "" "dim1" "hor" md18a md18 dm18 "" "dim1" "ver" md18a md19 dm19 "" "dim1" "hor" md20a md20 dm20 "" "dim1" "ver" pa md23 dm23 "" "dim1" "ver" md23 d2h dm23a "" "dim1" "hor" md24 md24a dm24 "" "dim1" "hor" pd md24 dm25 "" ) (setq dm26 (list (/(+(car tpm) (car tpn)) 2) (+(cadr tpm) 14))) (setq dm27 (list (/(+(car tp1) (car tp2)) 2) (-(cadr tp1) 14))) (setq dm28 (list (-(car tp7) 14) (/(+(cadr tp7) (cadr tp8)) 2))) (setq dm29 (list (/(+(car xr2) (car xr3)) 2) (+(cadr xr3) 14))) (setq dm30 (list (+(car xr2) 14) (/(+(cadr xr2) (cadr xr3)) 2))) (setq dm31 (list (-(car tp7) 14) (/(+(cadr tp7) (cadr tpn)) 2))) (setq xr1a (list (car xr1) (cadr xr3))) (setq dm32 (list (/(+(car xr1) (car xr3)) 2) (+(cadr xr3) 24))) (setq dm33 (list (+(car xra) 14) (/(+(cadr xra) (cadr xrb)) 2))) (command "dimlfac" 0.5 "" "dim1" "hor" tpn tpm dm26 "" "dim1" "hor" tp1 tp2 dm27 "" "dim1" "ver" tp8 tp7 dm28 "" "dim1" "hor" xr3 xr2 dm29 "" "dim1" "ver" xr2 xr3 dm30 "" "dim1" "ver" tp7 tpn dm31 "" "dim1" "hor" xr1a xr3 dm32 "" "dim1" "ver" xrb xra dm33 "" "dimlfac" 1 "") ;;;;Dtext for stair (setq sec (list (/(+(car pd)(car p5)) 2) (-(cadr pd) 30))) (setq rest (list (/(+(car as2)(car ap8)) 2) (+(cadr ac3) 44))) (setq main (list (/(+(car pd)(car p5)) 2) (-(cadr pd) 48))) (setq floor1 (list (-(car pa) 48) (cadr pa))) (setq floor2 (list (-(car d2) 48) (cadr d2))) (setq stepsec1 (list (car xrr) (-(cadr tp2) 34))) (setq stepsec2 (list (car xrr) (-(cadr xr9) 22))) (princ"\n Text at main section. ") (command "color" "m" "dtext" "j" "c" sec 7 0 ;Text (princ"\n Text at rest step. ") "dtext" "j" "c" rest 7 0 (princ"\n Text at 1st floor. ") "dtext" "j" "mr" floor1 7 0 (princ"\n Text at 2nd floor. ") "dtext" "j" "mr" floor2 7 0 (princ"\n Text at step longitudinal detail section. ") "dtext" "j" "c" stepsec1 7 0 (princ"\n Text at step transverse detail section. ") "dtext" "j" "c" stepsec2 7 0 (princ"\n Text for stair name. ") "dtext" "j" "c" main 9 0 "color" "white") (alert " ERASE or COPY Needed Entities Architect: BANH NGUYEN Copyright 1997 Thanks For Using This LISP File") (command "redraw") (princ"\n STAIR-A.LSP Draws Reinforced Concrete Stair. Start -> SAA")(princ) );defun SA2 ;Filename: STAIR-A3.LSP Draw Reinforced Concrete Stair. (c)1997. BANH NGUYEN (defun SA3 () (setvar "blipmode" 1) (setvar "dimscale" 26) (setvar "cmdecho" 0) ;(command "dim1" "save" "banh") (prompt"\n***** STAIR-A3.LSP Copyright 1997, Architect:BANH NGUYEN *****") (prompt"\n********** NEEDED to set LIMITS 1440 x 1080 or Larger **********\n") ;;;;Get information (setq p1 (getpoint"\n Pick Lower Left Beam Section Corner. ")) (setq sw (getdist"\n Stair Width in Centimeter <100>. . ? ")) (if (= sw nil)(setq sw 100)) (setq sh (getdist"\n Distance Floor to Floor in cm <300>? ")) (if (= sh nil)(setq sh 300)) (setq nu (getint"\n Even Amount of step <20> . . . . . ? ")) (if (= nu nil)(setq nu 20)) (setq tw (getdist"\n Step Width in Centimeter <28>. . . ? ")) (if (= tw nil)(setq tw 28)) (setq bw (getdist"\n Beam Width in Centimeter <22>. . . ? ")) (if (= bw nil)(setq bw 22)) (setq bh (getdist"\n Beam Height in Centimeter <40> . . ? ")) (if (= bh nil)(setq bh 40)) ;;;;Draw lover concrete beam section (setq p2 (list (+(car p1) bw) (cadr p1))) (setq p3 (list (car p2) (+(cadr p2) bh))) (setq p4 (list (car p1) (cadr p3))) ;;;;Draw middle concrete beam section (setq sl (/ sh 2)) ;half height (setq ss (+ sl sw)) (setq num-step (/ nu 2)) (fix num-step) (setq hh (/ sl num-step)) (setq tww (* num-step tw)) (setq p5 (list (+(car p1) tww sw) (+(cadr p1) sl))) (setq p6 (list (+(car p5) bw) (cadr p5))) (setq p7 (list (car p6) (+(cadr p6) bh))) (setq p8 (list (car p5) (cadr p7))) (command "viewres" "" 20000 "") (command "line" p5 p6 p7 p8 p5 "") ;;;;Array step (setq s2 (list (-(car p8) sw) (cadr p8))) (setq s23 (list (-(car s2) 2) (cadr s2))) (setq s22 (list (+(car s2) tw) (cadr s2))) (setq s21 (list (car s2) (-(cadr s2) hh))) (command "pline" s21 s23 s22 "") (setq count 1) (setq pw (list (car s22) (cadr s22))) (while (< count num-step) (setq pc (list (-(car s22) (* count tw)) (-(cadr s22) (* count hh)))) (command "COPY" "last" "" pw pc "") (setq pw (list (car pc) (cadr pc))) (setq count (1+ count)) ) ;;;;Draw stair slab (setq count2 (- count 1)) (setq p33 (list (-(car s21) (* count2 tw)) (-(cadr s21) (* count2 hh)))) (setq pp1 (list (car p33) (-(cadr p33) 11.7))) (setq pp2 (list (car s21) (-(cadr s21) 11.7))) (setq pp3 (list (car p8) (-(cadr s21) 11.7))) (command "line" pp1 pp2 pp3 "") ;;;;Draw bottom beam section (setq pa (list (-(car p33) bw) (cadr p33))) (setq pb (list (car pa) (-(cadr pa) bh))) (setq pd (list (car p33) (cadr pb))) (command "line" p33 pa pb pd p33 "" ;bottom beam section "line" s22 p8 "") ;;;;Draw upper stair (setq c3 (list (+(car s2) 2) (+(cadr s2) hh))) (setq c4 (list (-(car c3) tw 2) (cadr c3))) (command "pline" s2 c3 c4 "") (setq count3 1) (setq pk (list (car s2) (cadr s2))) (while (< count3 num-step) (setq pn (list (-(car s2) (* count3 tw)) (+(cadr s2) (* count3 hh)))) (command "COPY" "last" "" pk pn "") (setq pk (list (car pn) (cadr pn))) (setq count3 (1+ count3)) ) ;;;;Draw upper stair beam (setq d1 (list (car p33) (+(cadr p33) sh))) (setq d2 (list (-(car d1) bw) (cadr d1))) (setq d3 (list (car d2) (-(cadr d2) bh))) (setq d4 (list (car d1) (cadr d3))) (setq d5 (list (car d1) (-(cadr d1) hh))) (setq d6 (list (car d5) (-(cadr d5) 11.7))) (setq c5 (list (car s2) (-(cadr s2) 11.7))) (command "line" d2 d3 d4 d5 "" "line" d4 d6 "" "line" d6 c5 "") ;;;;Draw bottom beam section with stirrup (setq b 1.066666) (setq e (* b 0.7071)) (setq f (* 2 b)) (setq 1p33 (list (-(car p33) 3) (-(cadr p33) 3))) (setq 1p33a (list (car 1p33) (+(cadr 1p33) b))) (setq 1p33b (list (+(car 1p33) b) (cadr 1p33))) (setq 1pa (list (+(car pa) 3) (cadr 1p33))) (setq 1paa (list (car 1pa) (+(cadr 1pa) b))) (setq 1pab (list (-(car 1pa) b) (cadr 1pa))) (setq 1pa1 (list (+(car 1pa) e) (+(cadr 1pa) e))) (setq 1pa2 (list (-(car 1pa) e) (-(cadr 1pa) e))) (setq 1pa3 (list (+(car 1pa1) 2) (-(cadr 1pa1) 2))) (setq 1pa4 (list (+(car 1pa2) 2) (-(cadr 1pa2) 2))) (setq 1pb (list (car 1pa) (+(cadr pb) 3))) (setq 1pba (list (car 1pb) (-(cadr 1pb) b))) (setq 1pbb (list (-(car 1pb) b) (cadr 1pb))) (setq 1pd (list (car 1p33) (cadr 1pb))) (setq 1pda (list (car 1pd) (-(cadr 1pd) b))) (setq 1pdb (list (+(car 1pd) b) (cadr 1pd))) (command "donut" 0.01 f 1p33 "" "donut" 0.01 f 1pa "" "donut" 0.01 f 1pb "" "donut" 0.01 f 1pd "" "line" 1p33a 1paa "" "line" 1pab 1pbb "" "line" 1pba 1pda "" "line" 1pdb 1p33b "" "line" 1pa1 1pa3 "" "line" 1pa2 1pa4 "") ;;;;Draw rest step beam section with stirrup (setq 2p7 (list (-(car p7) 4) (-(cadr p7) 5.5))) (setq 2p7a (list (car 2p7) (+(cadr 2p7) b))) (setq 2p7b (list (+(car 2p7) b) (cadr 2p7))) (setq 2p8 (list (+(car p8) 3) (cadr 2p7))) (setq 2p8a (list (car 2p8) (+(cadr 2p8) b))) (setq 2p8b (list (-(car 2p8) b) (cadr 2p8))) (setq 2p81 (list (+(car 2p8) e) (+(cadr 2p8) e))) (setq 2p82 (list (-(car 2p8) e) (-(cadr 2p8) e))) (setq 2p83 (list (+(car 2p81) 2) (-(cadr 2p81) 2))) (setq 2p84 (list (+(car 2p82) 2) (-(cadr 2p82) 2))) (setq 2p5 (list (car 2p8) (+(cadr p5) 3))) (setq 2p5a (list (car 2p5) (-(cadr 2p5) b))) (setq 2p5b (list (-(car 2p5) b) (cadr 2p5))) (setq 2p6 (list (car 2p7) (cadr 2p5))) (setq 2p6a (list (car 2p6) (-(cadr 2p6) b))) (setq 2p6b (list (+(car 2p6) b) (cadr 2p6))) (command "donut" 0.01 f 2p7 "" "donut" 0.01 f 2p8 "" "donut" 0.01 f 2p5 "" "donut" 0.01 f 2p6 "" "line" 2p7a 2p8a "" "line" 2p8b 2p5b "" "line" 2p5a 2p6a "" "line" 2p6b 2p7b "" "line" 2p81 2p83 "" "line" 2p82 2p84 "") ;;;;Draw top beam section with stirrup (setq 1d1 (list (-(car d1) 3) (-(cadr d1) 3))) (setq 1d1a (list (car 1d1) (+(cadr 1d1) b))) (setq 1d1b (list (+(car 1d1) b) (cadr 1d1))) (setq 1d2 (list (+(car d2) 3) (cadr 1d1))) (setq 1d2a (list (car 1d2) (+(cadr 1d2) b))) (setq 1d2b (list (-(car 1d2) b) (cadr 1d2))) (setq 1d21 (list (+(car 1d2) e) (+(cadr 1d2) e))) (setq 1d22 (list (-(car 1d2) e) (-(cadr 1d2) e))) (setq 1d23 (list (+(car 1d21) 2) (-(cadr 1d21) 2))) (setq 1d24 (list (+(car 1d22) 2) (-(cadr 1d22) 2))) (setq 1d3 (list (car 1d2) (+(cadr d3) 3))) (setq 1d3a (list (car 1d3) (-(cadr 1d3) b))) (setq 1d3b (list (-(car 1d3) b) (cadr 1d3))) (setq 1d4 (list (car 1d1) (cadr 1d3))) (setq 1d4a (list (car 1d4) (-(cadr 1d4) b))) (setq 1d4b (list (+(car 1d4) b) (cadr 1d4))) (command "donut" 0.01 f 1d1 "" "donut" 0.01 f 1d2 "" "donut" 0.01 f 1d3 "" "donut" 0.01 f 1d4 "" "line" 1d1a 1d2a "" "line" 1d2b 1d3b "" "line" 1d3a 1d4a "" "line" 1d4b 1d1b "" "line" 1d21 1d23 "" "line" 1d22 1d24 "") ;;;;Draw rest step beam section with stirrup (setq m1a (list (+(car s2) 4) (cadr 2p7))) (setq m2a (list (car m1a) (+(cadr pp2) 3))) (setq m3a (list (+(car m2a) 12) (cadr m2a))) (setq m4a (list (car m3a) (cadr m1a))) (setq m4aa (list (car m4a) (+(cadr m4a) b))) (setq m4ab (list (+(car m4a) b) (cadr m4a))) (setq m4a1 (list (+(car m4a) e) (-(cadr m4a) e))) (setq m4a2 (list (-(car m4a) e) (+(cadr m4a) e))) (setq m4a3 (list (-(car m4a1) 2) (-(cadr m4a1) 2))) (setq m4a4 (list (-(car m4a2) 2) (-(cadr m4a2) 2))) (setq m1aa (list (car m1a) (+(cadr m1a) b))) (setq m1ab (list (-(car m1a) b) (cadr m1a))) (setq m2aa (list (car m2a) (-(cadr m2a) b))) (setq m2ab (list (-(car m2a) b) (cadr m2a))) (setq m3aa (list (car m3a) (-(cadr m3a) b))) (setq m3ab (list (+(car m3a) b) (cadr m3a))) (command "donut" 0.01 f m1a m2a m3a m4a "" "line" m4aa m1aa "" "line" m1ab m2ab "" "line" m2aa m3aa "" "line" m3ab m4ab "" "line" m4a1 m4a3 "" "line" m4a2 m4a4 "") ;;;;Draw beam longitudinal steel at rest step (setq i (/ f 4)) (setq aap7 (list (car 2p7) (+(cadr 2p7) 1.7))) (setq bp7 (list (+(car 2p7) 1.7) (cadr 2p7))) (setq aap6 (list (car bp7) (+(cadr m3a) 7))) (setq bp6 (list (-(car aap6) 2) (cadr aap6))) (setq cp6 (list (car bp6) (+(cadr bp6) 2))) (setq cp7 (list (-(car m1a) 0.1) (+(cadr m1a) 1.7))) (setq dp7 (list (car cp7) (-(cadr cp7) 3.4))) (setq ep7 (list (+(car dp7) 2.1) (cadr dp7))) (setq ga (list (car 2p6) (+(cadr m2a) 1.5))) (setq gb (list (car ga) (+(cadr ga) 2))) (setq gc (list (-(car gb) 2) (cadr gb))) (setq ja (list (car cp7) (cadr ga))) (setq jb (list (car ja) (+(cadr ja) 2))) (setq jc (list (+(car jb) 2) (cadr jb))) (command "pline" cp6 "w" i i bp6 "a" aap6 "l" bp7 "a" aap7 "l" cp7 "a" dp7 "l" ep7 "" "pline" jc jb "a" ja "l" ga "a" gb "l" gc "w" 0 0 "") ;;;;Draw longitudinal beam stirrup at rest step (setq st1 (list (-(car p8) 5) (cadr aap7))) (setq st2 (list (car st1) (cadr ga))) (command "line" st1 st2 "") (setq mm (/(- sw 20) 20)) (setq count4 0) (while (< count4 mm) (setq nv (+ 5 (/ count4 0.5))) (setq nvv (- nv)) (command "array" "last" "" "R" 1 2 nvv "") (setq count4 (1+ count4)) );while ;Draw stirrup (setq ts1 (list (+(car m4ab) 5) (cadr cp7))) (setq ts2 (list (car ts1) (cadr ga))) (command "line" ts1 ts2 "") (setq count5 0) (while (< count5 mm) (setq nk (+ 5 (/ count5 0.5))) (command "array" "last" "" "R" 1 2 nk "") (setq count5 (1+ count5)) );while ;Draw stirrup ;;;;Draw reinforced steel for upper stair slab (setq fg (* tw 0.35)) (setq hg (* hh 0.35)) (setq ka1 (list (car d5) (-(cadr d5) 1.8))) ;Draw longitudinal steel (setq kaa (list (car d6) (+(cadr d6) 1.8))) (setq kaa1 (list (-(car kaa) (* 1.8 fg)) (+(cadr kaa) (* 1.8 hg)))) (setq kaa2 (list (+(car kaa1) 1.2) (+(cadr kaa1) 1.4))) (setq kaa3 (list (+(car kaa2) 1.5) (-(cadr kaa2) 1))) (setq kab (list (+(car kaa) (* tw 2.05)) (-(cadr kaa) (* hh 2.05)))) (setq kas (list (+(car ka1) tw tw) (-(cadr ka1) hh hh))) (setq ka2 (list (+(car d2) 4) (-(cadr d2) 8.3))) (setq ka3 (list (-(car ka2) 1) (-(cadr ka2) 1))) (setq ka4 (list (car ka3) (+(cadr d3) 8))) (setq ka5 (list (+(car ka4) 2) (cadr ka4))) (setq ka6 (list (car ka5) (+(cadr ka5) 2))) (setq kb1 (list (car s2) (-(cadr s2) 1.8))) (setq kbb (list (car c5) (+(cadr c5) 1.8))) (setq kbb1 (list (+(car kbb) (* 1.6 fg)) (-(cadr kbb) (* 1.6 hg)))) (setq kbb2 (list (-(car kbb1) 1.2) (-(cadr kbb1) 1.4))) (setq kbb3 (list (-(car kbb2) 1.5) (+(cadr kbb2) 1))) (setq kba (list (-(car kbb) (* tw 2.35)) (+(cadr kbb) (* hh 2.35)))) (setq kbs (list (-(car kb1) tw tw) (+(cadr kb1) hh hh))) (setq kb2 (list (-(car m4a) 1) (-(cadr s2) 11.5))) (setq kb3 (list (+(car kb2) 1) (-(cadr kb2) 1.5))) (setq kb4 (list (car kb3) (+(cadr pp2) 6))) (setq kb5 (list (-(car kb4) 2) (cadr kb4))) (setq kb6 (list (car kb5) (+(cadr kb5) 2))) (command "pline" ka6 ka5 "a" ka4 "l" ka3 "a" ka2 "l" ka1 kas kab kba kbs kb1 kb2 "a" kb3 "l" kb4 "a" kb5 "l" kb6 "" "pline" kaa3 kaa2 "a" kaa1 "l" kaa kbb kbb1 "a" kbb2 "l" kbb3 "") (setq ka1a (list (+(car ka1) 0.5 (/ fg 2)) (-(cadr ka1) 1.3 (/ hg 2)))) (setq kb1a (list (-(car kbb) (/ fg 2)) (+(cadr kbb) 1 (/ hg 2)))) (setq kak (-(car kb1a) (car ka1a))) (setq gf (+ 1 (/ kak fg))) (command "donut" 0.01 1 kb1a "") (setq count6 1) (setq kp (list (car kb1a) (cadr kb1a))) (while (<= count6 gf) (setq np (list (-(car kb1a) (* count6 fg)) (+(cadr kb1a) (* count6 hg)))) (command "COPY" "last" "" kp np "") (setq kp (list (car np) (cadr np))) (setq count6 (1+ count6)) ) (command "donut" 0.01 1 ka1a "") (setq coun1 1) (setq kp (list (car ka1a) (cadr ka1a))) (while (< coun1 6) (setq np (list (+(car ka1a) (* coun1 fg)) (-(cadr ka1a) (* coun1 hg)))) (command "COPY" "last" "" kp np "") (setq kp (list (car np) (cadr np))) (setq coun1 (1+ coun1)) ) (setq kb1b (list (-(car kb1) 1 (/ fg 2)) (+(cadr kb1) -0.4 (/ hg 2)))) (command "donut" 0.01 1 kb1b "") (setq coun2 1) (setq kb (list (car kb1b) (cadr kb1b))) (while (< coun2 6) (setq nb (list (-(car kb1b) (* coun2 fg)) (+(cadr kb1b) (* coun2 hg)))) (command "COPY" "last" "" kb nb "") (setq kb (list (car nb) (cadr nb))) (setq coun2 (1+ coun2)) ) ;;;;Draw reinforced steel for lower stair slab (setq ug1 (list (car p33) (-(cadr p33) 1.8))) (setq ug2 (list (+(car pa) 4) (-(cadr pa) 12))) (setq ug3 (list (-(car ug2) 1) (-(cadr ug2) 1.5))) (setq ug4 (list (car ug3) (+(cadr pb) 8))) (setq ug5 (list (+(car ug4) 2) (cadr ug4))) (setq ug6 (list (car ug5) (+(cadr ug5) 2))) (setq uj1 (list (car s21) (-(cadr s21) 1.8))) (setq uj2 (list (-(car m4ab) 0.5) (-(cadr s2) 8.3))) (setq uj3 (list (+(car uj2) 2) (-(cadr uj2) 1))) (setq uj4 (list (car uj3) (+(cadr pp2) 6))) (setq uj5 (list (-(car uj4) 2) (cadr uj4))) (setq uj6 (list (car uj5) (+(cadr uj5) 2))) (setq ppa (list (car pp1) (+(cadr pp1) 1.8))) (setq ppa1 (list (-(car ppa) (* 1.8 fg)) (-(cadr ppa) (* 1.8 hg)))) (setq ppa2 (list (+(car ppa1) 1.2) (-(cadr ppa1) 1.4))) (setq ppa3 (list (+(car ppa2) 1.5) (+(cadr ppa2) 1))) (setq ppb (list (car pp2) (+(cadr pp2) 1.8))) (setq ppb1 (list (+(car ppb) (* 1.6 fg)) (+(cadr ppb) (* 1.6 hg)))) (setq ppb2 (list (-(car ppb1) 1.2) (+(cadr ppb1) 1.4))) (setq ppb3 (list (-(car ppb2) 1.5) (-(cadr ppb2) 1))) (setq ppc (list (-(car ppb) (/ fg 2)) (-(cadr ppb) -1 (/ hg 2)))) (setq pbs (list (-(car uj1) tw tw) (-(cadr uj1) hh hh))) (setq pas (list (+(car ug1) tw tw) (+(cadr ug1) hh hh))) (setq pab (list (+(car ppa) (* tw 2.3)) (+(cadr ppa) (* hh 2.3)))) (setq pba (list (-(car ppb) (* tw 2.05)) (-(cadr ppb) (* hh 2.05)))) (command "pline" ug6 ug5 "a" ug4 "l" ug3 "a" ug2 "l" ug1 pas pab pba pbs uj1 uj2 "a" uj3 "l" uj4 "a" uj5 "l" uj6 "" "pline" ppa3 ppa2 "a" ppa1 "l" ppa ppb ppb1 "a" ppb2 "l" ppb3 "" "donut" 0.01 1 ppc "") (setq count7 1) (setq ku (list (car ppc) (cadr ppc))) (while (< count7 gf) (setq up (list (-(car ppc) (* count7 fg)) (-(cadr ppc) (* count7 hg)))) (command "COPY" "last" "" ku up "") (setq ku (list (car up) (cadr up))) (setq count7 (1+ count7)) ) (setq ug1a (list (+(car ug1) 0.5 (/ fg 2)) (+(cadr ug1) -0.7 (/ hg 2)))) (command "donut" 0.01 1 ug1a "") (setq coun3 1) (setq kh (list (car ug1a) (cadr ug1a))) (while (< coun3 6) (setq nm (list (+(car ug1a) (* coun3 fg)) (+(cadr ug1a) (* coun3 hg)))) (command "COPY" "last" "" kh nm "") (setq kh (list (car nm) (cadr nm))) (setq coun3 (1+ coun3)) ) (setq uj1a (list (-(car uj1) 1 (/ fg 2)) (-(cadr uj1) 1.59 (/ hg 2)))) (command "donut" 0.01 1 uj1a "") (setq coun4 1) (setq k1b (list (car uj1a) (cadr uj1a))) (while (< coun4 6) (setq n1b (list (-(car uj1a) (* coun4 fg)) (-(cadr uj1a) (* coun4 hg)))) (command "COPY" "last" "" k1b n1b "") (setq k1b (list (car n1b) (cadr n1b))) (setq coun4 (1+ coun4)) ) ;;;;Draw reinforced steel at rest step slab (setq rei (list (+(car m4ab) 6) (-(cadr s2) 2))) (command "donut" 0.01 1 rei"") (setq coun 1) (setq fz (list (car rei) (cadr rei))) (setq rin (/(-(car p8) (car rei) 6) 7)) (while (<= coun 7) (setq pie (list (+(car rei) (* coun rin)) (cadr rei))) (command "COPY" "last" "" fz pie "") (setq fz (list (car pie) (cadr pie))) (setq coun (1+ coun)) ) (setq reia (list (+(car s2) 1.5) (+(cadr rei) 0.7))) (setq reib (list (+(car reia) 1.5) (cadr reia))) (setq reic (list (car reia) (-(cadr reia) 1.4))) (setq dp7c (list (car 2p7) (cadr reic))) (setq dp7a (list (car dp7c) (+(cadr dp7c) 1.4))) (setq dp7b (list (-(car dp7a) 1.5) (cadr dp7a))) (command "pline" reib reia "a" reic "l" dp7c "a" dp7a "l" dp7b "") ;;;;Draw step detail section (setq tp1 (list (car p7) (cadr d4))) (setq tp2 (list (car tp1) (+(cadr tp1) 10))) (setq tp3 (list (-(car tp2) sw) (cadr tp2))) (setq tp4 (list (car tp3) (cadr tp1))) (setq tp5 (list (car tp3) (+(cadr tp3) hh))) (setq tp6 (list (car tp2) (cadr tp5))) (command "pline" tp4 tp1 tp2 tp3 tp4 "" "color" "r" "pline" tp3 tp5 tp6 tp2 "" "color" "w") ;;;;Draw reinforced steel for step section (setq sp1 (list (-(car tp1) 3) (+(cadr tp1) 2))) (setq sp2 (list (+(car tp4) 3) (cadr sp1))) (command "donut" 0.01 1 sp2 "") (setq tv (list (car sp2) (cadr sp2))) (setq ti (/ (- sw 6) 8)) (setq coutx 1) (while (<= coutx 8) (setq tn (list (+(car sp2) (* coutx ti)) (cadr sp2))) (command "COPY" "last" "" tv tn "") (setq tv (list (car tn) (cadr tn))) (setq coutx (1+ coutx)) ) (setq sp1a (list (car sp1) (+(cadr sp1) 0.9))) (setq sp1b (list (car sp1a) (-(cadr sp1a) 1.8))) (setq sp1c (list (-(car sp1b) 2) (cadr sp1b))) (setq sp2a (list (car sp2) (+(cadr sp2) 0.9))) (setq sp2b (list (car sp2a) (-(cadr sp2a) 1.8))) (setq sp2c (list (+(car sp2b) 2) (cadr sp2b))) (command "pline" sp1c sp1b "a" sp1a "l" sp2a "a" sp2b "l" sp2c "") ;;;;Draw rest step transverse section (setq rr (-(cadr s2) (cadr pp2))) (setq r1 (list (car p6) (cadr p33))) (setq r2 (list (car r1) (+(cadr r1) rr))) (setq r3 (list (-(car r2) sw sw 10) (cadr r2))) (setq r4 (list (car r3) (cadr r1))) (setq r5 (list (+(car r4) bw) (cadr r1))) (setq r6 (list (car r5) (-(cadr r2) 8))) (setq r7 (list (-(car r1) bw) (cadr r6))) (setq r8 (list (car r7) (cadr r1))) (command "line" r8 r1 r2 r3 r4 r5 r6 r7 r8 "" "color" "r" "line" r8 r5 "" "color" "w") ;;;;Draw rest step beam 1 section with stirrup (setq r1a (list (-(car r1) 3) (+(cadr r1) 3))) (setq r2a (list (car r1a) (-(cadr r2) 3))) (setq r7a (list (+(car r7) 3) (cadr r2a))) (setq r8a (list (car r7a) (cadr r1a))) (setq r8aa (list (car r8a) (-(cadr r8a) b))) (setq r8ab (list (-(car r8a) b) (cadr r8a))) (setq r8a1 (list (+(car r8a) e) (-(cadr r8a) e))) (setq r8a2 (list (-(car r8a) e) (+(cadr r8a) e))) (setq r8a3 (list (+(car r8a1) 2) (+(cadr r8a1) 2))) (setq r8a4 (list (+(car r8a2) 2) (+(cadr r8a2) 2))) (setq r1aa (list (car r1a) (-(cadr r1a) b))) (setq r1ab (list (+(car r1a) b) (cadr r1a))) (setq r2aa (list (car r2a) (+(cadr r2a) b))) (setq r2ab (list (+(car r2a) b) (cadr r2a))) (setq r7aa (list (car r7a) (+(cadr r7a) b))) (setq r7ab (list (-(car r7a) b) (cadr r7a))) (command "donut" 0.01 f r1a r2a r7a r8a "" "line" r8aa r1aa "" "line" r1ab r2ab "" "line" r2aa r7aa "" "line" r7ab r8ab "" "line" r8a1 r8a3 "" "line" r8a2 r8a4 "") ;;;;Draw rest step beam 2 section with stirrup (setq r5a (list (-(car r5) 3) (+(cadr r5) 3))) (setq r6a (list (car r5a) (-(cadr r3) 3))) (setq r3a (list (+(car r3) 3) (cadr r6a))) (setq r4a (list (car r3a) (cadr r5a))) (setq r4aa (list (car r4a) (-(cadr r4a) b))) (setq r4ab (list (-(car r4a) b) (cadr r4a))) (setq r4a1 (list (+(car r4a) e) (-(cadr r4a) e))) (setq r4a2 (list (-(car r4a) e) (+(cadr r4a) e))) (setq r4a3 (list (+(car r4a1) 2) (+(cadr r4a1) 2))) (setq r4a4 (list (+(car r4a2) 2) (+(cadr r4a2) 2))) (setq r5aa (list (car r5a) (-(cadr r5a) b))) (setq r5ab (list (+(car r5a) b) (cadr r5a))) (setq r6aa (list (car r6a) (+(cadr r6a) b))) (setq r6ab (list (+(car r6a) b) (cadr r6a))) (setq r3aa (list (car r3a) (+(cadr r3a) b))) (setq r3ab (list (-(car r3a) b) (cadr r3a))) (command "donut" 0.01 f r5a r6a r3a r4a "" "line" r4aa r5aa "" "line" r5ab r6ab "" "line" r6aa r3aa "" "line" r3ab r4ab "" "line" r4a1 r4a3 "" "line" r4a2 r4a4 "") ;;;;Draw reinforced steel for rest step slab section (setq rp6 (list (+(car r6) 6) (+(cadr r6) 2))) (setq rp7 (list (-(car r7) 6) (cadr rp6))) (setq dd (-(car rp7) (car rp6))) (command "donut" 0.01 1 rp6 "") (setq vt (list (car rp6) (cadr rp6))) (setq ji (/ dd 14)) (setq coutu 1) (while (<= coutu 14) (setq to (list (+(car rp6) (* coutu ji)) (cadr rp6))) (command "COPY" "last" "" vt to "") (setq vt (list (car to) (cadr to))) (setq coutu (1+ coutu)) ) (setq raa (list (car r3a) (+(cadr rp6) 0.7))) (setq rab (list (car raa) (-(cadr raa) 1.5))) (setq rac (list (+(car rab) 1.5) (cadr rab))) (setq rba (list (car r2a) (cadr raa))) (setq rbb (list (car rba) (cadr rab))) (setq rbc (list (-(car rbb) 1.5) (cadr rbb))) (command "pline" rac rab "a" raa "l" rba "a" rbb "l" rbc "") ;;;;Dimension (setq dm1 (list (-(car pb) 16) (/(+(cadr pb) (cadr pa)) 2))) (setq dm2 (list (/(+(car pd) (car pb)) 2) (-(cadr pb) 14))) (setq md3 (list (car s2) (cadr c3))) (setq dm3 (list (/(+(car p8)(car s2)) 2) (+(cadr md3) 14))) (setq dm4 (list (/(+(car p7)(car p8)) 2) (+(cadr p8) 14))) (setq dm5 (list (+(car p6) 14) (/(+(cadr p6) (cadr p7)) 2))) (setq dm6 (list (/(+(car p5)(car pp2)) 2) (-(cadr p5) 14))) (setq dm7 (list (+(car pd) 14) (/(+(cadr pd) (cadr pp1)) 2))) (setq dm8 (list (/(+(car d1)(car d2)) 2) (+(cadr d1) 14))) (setq md9 (list (-(car d2) 8) (cadr d2))) (setq dm9 (list (-(car d2) 14) (/(+(cadr d2) (cadr d3)) 2))) (setq md10 (list (car md3) (+(cadr md3) 45))) (setq dm10 (list (/(+(car d1)(car md10)) 2) (+(cadr d1) 14))) (setq dm11 (list (-(car d2) 42) (/(+(cadr pa) (cadr d2)) 2))) (setq md12 (list (-(car s2) 30) (cadr s2))) (setq dm12 (list (-(car d2) 28) (/(+(cadr md12) (cadr d2)) 2))) (setq dm13 (list (-(car d2) 28) (/(+(cadr pa) (cadr md12)) 2))) (setq md14 (list (car c4) (+(cadr c4) hh))) (setq dm14 (list (/(+(car md14)(car md3)) 2) (+(cadr md14) 14))) (setq md15 (list (-(car c3) tw tw tw) (+(cadr c3) hh hh hh))) (setq md16 (list (-(car md15) 2 tw) (+(cadr md15) hh))) (setq md16a (list (-(car md15) tw) (+(cadr md15) hh))) (setq dm15 (list (/(+(car md15)(car md16)) 2) (+(cadr md16) 14))) (setq dm16 (list (+(car md15) 14) (/(+(cadr md15) (cadr md16)) 2))) (setq md17 (list (+(-(car p33) 2) tw) (+(cadr p33) hh hh))) (setq md18 (list (+(car md17) tw) (+(cadr md17) hh))) (setq dm17 (list (/(+(car md17)(car md18)) 2) (+(cadr md18) 14))) (setq dm18 (list (-(car md17) 14) (/(+(cadr md17) (cadr md18)) 2))) (setq md19 (list (+(car md18) tw) (+(cadr md18) hh))) (setq md20 (list (+(car md19) 2 tw) (+(cadr md19) hh))) (setq dm19 (list (/(+(car md19)(car md20)) 2) (+(cadr md20) 14))) (setq dm20 (list (+(car d6) 14) (/(+(cadr d4) (cadr d6)) 2))) (setq dm21 (list (-(car p5) 14) (/(+(cadr p5) (cadr pp3)) 2))) (command "luprec" 1 "" "dim1" "ver" pb pa dm1 "" "dim1" "hor" pb pd dm2 "" "dim1" "hor" md3 p8 dm3 "" "dim1" "hor" p8 p7 dm4 "" "dim1" "ver" p6 p7 dm5 "" "dim1" "hor" pp2 p5 dm6 "" "dim1" "ver" pd pp1 dm7 "" "dim1" "hor" d2 d1 dm8 "" "dim1" "ver" d3 md9 dm9 "" "dim1" "hor" d1 md10 dm10 "" "dim1" "ver" pa md9 dm11 "" "dim1" "ver" md12 md9 dm12 "" "dim1" "ver" pa md12 dm13 "" "dim1" "hor" md14 md3 dm14 "" "dim1" "hor" md16 md15 dm15 "" "dim1" "ver" md15 md16a dm16 "" "dim1" "hor" md17 md18 dm17 "" "dim1" "ver" md17 md18 dm18 "" "dim1" "hor" md19 md20 dm19 "" "dim1" "ver" d4 d6 dm20 "" "dim1" "ver" p5 pp3 dm21 "" ) (setq dm27 (list (/(+(car tp1) (car tp4)) 2) (-(cadr tp1) 14))) (setq dm28 (list (+(car tp1) 14) (/(+(cadr tp1) (cadr tp2)) 2))) (setq dm29 (list (+(car tp1) 14) (/(+(cadr tp2) (cadr tp6)) 2))) (setq dm30 (list (/(+(car r2) (car r3)) 2) (+(cadr r2) 14))) (setq dm31 (list (+(car r1) 14) (/(+(cadr r1) (cadr r2)) 2))) (setq md32 (list (car r4) (cadr r6))) (setq dm32 (list (-(car r4) 14) (/(+(cadr r5) (cadr r6)) 2))) (setq dm33 (list (/(+(car r4) (car r5)) 2) (-(cadr r4) 14))) (command "dim1" "hor" tp4 tp1 dm27 "" "dim1" "ver" tp1 tp2 dm28 "" "dim1" "ver" tp2 tp6 dm29 "" "dim1" "hor" r3 r2 dm30 "" "dim1" "ver" r1 r2 dm31 "" "dim1" "ver" r4 md32 dm32 "" "dim1" "hor" r4 r5 dm33 "" ) ;;;;Dtext for stair (setq sec (list (/(+(car pd)(car p5)) 2) (-(cadr pd) 30))) (setq rest (list (/(+(car s2)(car p8)) 2) (+(cadr c3) 38))) (setq main (list (/(+(car pd)(car p5)) 2) (-(cadr pd) 48))) (setq floor1 (list (-(car pa) 58) (cadr pa))) (setq floor2 (list (-(car d2) 58) (cadr d2))) (setq stepsec1 (list (/(+(car tp5)(car tp6)) 2) (+(cadr tp6) 16))) (setq stepsec2 (list (/(+(car r3)(car r2)) 2) (-(cadr r1) 20))) (princ"\n Text at main section. ") (command "color" "m" "dtext" "j" "c" sec 7 0 ;Text (princ"\n Text at rest step. ") "dtext" "j" "c" rest 7 0 (princ"\n Text at 1st floor. ") "dtext" "j" "mr" floor1 7 0 (princ"\n Text at 2nd floor. ") "dtext" "j" "mr" floor2 7 0 (princ"\n Text at step transverse section. ") "dtext" "j" "c" stepsec1 7 0 (princ"\n Text at rest step transverse section. ") "dtext" "j" "c" stepsec2 7 0 (princ"\n Text for stair name. ") "dtext" "j" "c" main 9 0 "color" "white") (alert " ERASE or COPY Needed Entities Architect: BANH NGUYEN Copyright 1997 Thanks For Using This LISP File") (command "redraw") (princ"\nSTAIR-A.LSP Draws Reinforced Concrete Stair. Start -> SAA")(princ) );defun SA3 ;Filename: STAIR-A4.LSP Draw Reinforced Concrete Stair. (c)1997. BANH NGUYEN (defun SA4 () (setvar "blipmode" 1) (setvar "dimscale" 26) (setvar "cmdecho" 0) ;(command "dim1" "save" "banh") (prompt"\n***** STAIR-A4.LSP Copyright 1997, Architect:BANH NGUYEN *****") (prompt"\n********** NEEDED to set LIMITS 1440 x 1080 or Larger **********\n") ;;;;Get information (setq p1 (getpoint"\n Pick Lower Left Beam Section Corner. ")) (setq sw (getdist"\n Stair Width in Centimeter <100>. . ? ")) (if (= sw nil)(setq sw 100)) (setq sh (getdist"\n Distance Floor to Floor in cm <300>? ")) (if (= sh nil)(setq sh 300)) (setq nu (getint"\n Even Amount of step <20> . . . . . ? ")) (if (= nu nil)(setq nu 20)) (setq tw (getdist"\n Step Width in Centimeter <28>. . . ? ")) (if (= tw nil)(setq tw 28)) (setq bw (getdist"\n Beam Width in Centimeter <22>. . . ? ")) (if (= bw nil)(setq bw 22)) (setq bh (getdist"\n Beam Height in Centimeter <40> . . ? ")) (if (= bh nil)(setq bh 40)) ;;;;Draw lover concrete beam section (setq p2 (list (+(car p1) bw) (cadr p1))) (setq p3 (list (car p2) (+(cadr p2) bh))) (setq p4 (list (car p1) (cadr p3))) ;;;;Draw middle concrete beam section (setq sl (/ sh 2)) ;half height (setq ss (+ sl sw)) (setq num-step (/ nu 2)) (fix num-step) (setq hh (/ sl num-step)) (setq tww (* num-step tw)) (setq p5 (list (+(car p1) tww sw) (+(cadr p1) sl))) (setq p6 (list (+(car p5) bw) (cadr p5))) (setq p7 (list (car p6) (+(cadr p6) bh))) (setq p8 (list (car p5) (cadr p7))) (command "viewres" "" 20000 "") (command "line" p5 p6 p7 p8 p5 "") ;;;;Array step (setq s2 (list (-(car p8) sw) (cadr p8))) (setq s23 (list (car s2) (cadr s2))) (setq s22 (list (+(car s2) tw) (cadr s2))) (setq s21 (list (car s2) (-(cadr s2) hh))) (command "pline" s21 s23 s22 "") (setq count 1) (setq pw (list (car s22) (cadr s22))) (while (< count num-step) (setq pc (list (-(car s22) (* count tw)) (-(cadr s22) (* count hh)))) (command "COPY" "last" "" pw pc "") (setq pw (list (car pc) (cadr pc))) (setq count (1+ count)) ) ;;;;Draw stair slab (setq count2 (- count 1)) (setq p33 (list (-(car s21) (* count2 tw)) (-(cadr s21) (* count2 hh)))) (setq pp1 (list (car p33) (-(cadr p33) 11.7))) (setq pp2 (list (car s21) (-(cadr s21) 11.7))) (setq pp3 (list (car p8) (-(cadr s21) 11.7))) (command "line" pp1 pp2 pp3 "") ;;;;Draw bottom beam section (setq pa (list (-(car p33) bw) (cadr p33))) (setq pb (list (car pa) (-(cadr pa) bh))) (setq pd (list (car p33) (cadr pb))) (command "line" p33 pa pb pd p33 "" ;bottom beam section "line" s22 p8 "") ;;;;Draw upper stair (setq c3 (list (car s2) (+(cadr s2) hh))) (setq c4 (list (-(car c3) tw) (cadr c3))) (command "pline" s2 c3 c4 "") (setq count3 1) (setq pk (list (car s2) (cadr s2))) (while (< count3 num-step) (setq pn (list (-(car s2) (* count3 tw)) (+(cadr s2) (* count3 hh)))) (command "COPY" "last" "" pk pn "") (setq pk (list (car pn) (cadr pn))) (setq count3 (1+ count3)) ) ;;;;Draw upper stair beam (setq d1 (list (car p33) (+(cadr p33) sh))) (setq d2 (list (-(car d1) bw) (cadr d1))) (setq d3 (list (car d2) (-(cadr d2) bh))) (setq d4 (list (car d1) (cadr d3))) (setq d5 (list (car d1) (-(cadr d1) hh))) (setq d6 (list (car d5) (-(cadr d5) 11.7))) (setq c5 (list (car s2) (-(cadr s2) 11.7))) (command "line" d2 d3 d4 d5 "" "line" d4 d6 "" "line" d6 c5 "") ;;;;Draw bottom beam section with stirrup (setq b 1.066666) (setq e (* b 0.7071)) (setq f (* 2 b)) (setq 1p33 (list (-(car p33) 3) (-(cadr p33) 3))) (setq 1p33a (list (car 1p33) (+(cadr 1p33) b))) (setq 1p33b (list (+(car 1p33) b) (cadr 1p33))) (setq 1pa (list (+(car pa) 3) (cadr 1p33))) (setq 1paa (list (car 1pa) (+(cadr 1pa) b))) (setq 1pab (list (-(car 1pa) b) (cadr 1pa))) (setq 1pa1 (list (+(car 1pa) e) (+(cadr 1pa) e))) (setq 1pa2 (list (-(car 1pa) e) (-(cadr 1pa) e))) (setq 1pa3 (list (+(car 1pa1) 2) (-(cadr 1pa1) 2))) (setq 1pa4 (list (+(car 1pa2) 2) (-(cadr 1pa2) 2))) (setq 1pb (list (car 1pa) (+(cadr pb) 3))) (setq 1pba (list (car 1pb) (-(cadr 1pb) b))) (setq 1pbb (list (-(car 1pb) b) (cadr 1pb))) (setq 1pd (list (car 1p33) (cadr 1pb))) (setq 1pda (list (car 1pd) (-(cadr 1pd) b))) (setq 1pdb (list (+(car 1pd) b) (cadr 1pd))) (command "donut" 0.01 f 1p33 "" "donut" 0.01 f 1pa "" "donut" 0.01 f 1pb "" "donut" 0.01 f 1pd "" "line" 1p33a 1paa "" "line" 1pab 1pbb "" "line" 1pba 1pda "" "line" 1pdb 1p33b "" "line" 1pa1 1pa3 "" "line" 1pa2 1pa4 "") ;;;;Draw rest step beam section with stirrup (setq 2p7 (list (-(car p7) 4) (-(cadr p7) 5.5))) (setq 2p7a (list (car 2p7) (+(cadr 2p7) b))) (setq 2p7b (list (+(car 2p7) b) (cadr 2p7))) (setq 2p8 (list (+(car p8) 3) (cadr 2p7))) (setq 2p8a (list (car 2p8) (+(cadr 2p8) b))) (setq 2p8b (list (-(car 2p8) b) (cadr 2p8))) (setq 2p81 (list (+(car 2p8) e) (+(cadr 2p8) e))) (setq 2p82 (list (-(car 2p8) e) (-(cadr 2p8) e))) (setq 2p83 (list (+(car 2p81) 2) (-(cadr 2p81) 2))) (setq 2p84 (list (+(car 2p82) 2) (-(cadr 2p82) 2))) (setq 2p5 (list (car 2p8) (+(cadr p5) 3))) (setq 2p5a (list (car 2p5) (-(cadr 2p5) b))) (setq 2p5b (list (-(car 2p5) b) (cadr 2p5))) (setq 2p6 (list (car 2p7) (cadr 2p5))) (setq 2p6a (list (car 2p6) (-(cadr 2p6) b))) (setq 2p6b (list (+(car 2p6) b) (cadr 2p6))) (command "donut" 0.01 f 2p7 "" "donut" 0.01 f 2p8 "" "donut" 0.01 f 2p5 "" "donut" 0.01 f 2p6 "" "line" 2p7a 2p8a "" "line" 2p8b 2p5b "" "line" 2p5a 2p6a "" "line" 2p6b 2p7b "" "line" 2p81 2p83 "" "line" 2p82 2p84 "") ;;;;Draw top beam section with stirrup (setq 1d1 (list (-(car d1) 3) (-(cadr d1) 3))) (setq 1d1a (list (car 1d1) (+(cadr 1d1) b))) (setq 1d1b (list (+(car 1d1) b) (cadr 1d1))) (setq 1d2 (list (+(car d2) 3) (cadr 1d1))) (setq 1d2a (list (car 1d2) (+(cadr 1d2) b))) (setq 1d2b (list (-(car 1d2) b) (cadr 1d2))) (setq 1d21 (list (+(car 1d2) e) (+(cadr 1d2) e))) (setq 1d22 (list (-(car 1d2) e) (-(cadr 1d2) e))) (setq 1d23 (list (+(car 1d21) 2) (-(cadr 1d21) 2))) (setq 1d24 (list (+(car 1d22) 2) (-(cadr 1d22) 2))) (setq 1d3 (list (car 1d2) (+(cadr d3) 3))) (setq 1d3a (list (car 1d3) (-(cadr 1d3) b))) (setq 1d3b (list (-(car 1d3) b) (cadr 1d3))) (setq 1d4 (list (car 1d1) (cadr 1d3))) (setq 1d4a (list (car 1d4) (-(cadr 1d4) b))) (setq 1d4b (list (+(car 1d4) b) (cadr 1d4))) (command "donut" 0.01 f 1d1 "" "donut" 0.01 f 1d2 "" "donut" 0.01 f 1d3 "" "donut" 0.01 f 1d4 "" "line" 1d1a 1d2a "" "line" 1d2b 1d3b "" "line" 1d3a 1d4a "" "line" 1d4b 1d1b "" "line" 1d21 1d23 "" "line" 1d22 1d24 "") ;;;;Draw rest step beam section with stirrup (setq m1a (list (+(car s2) 4) (cadr 2p7))) (setq m2a (list (car m1a) (+(cadr pp2) 3))) (setq m3a (list (+(car m2a) 12) (cadr m2a))) (setq m4a (list (car m3a) (cadr m1a))) (setq m4aa (list (car m4a) (+(cadr m4a) b))) (setq m4ab (list (+(car m4a) b) (cadr m4a))) (setq m4a1 (list (+(car m4a) e) (-(cadr m4a) e))) (setq m4a2 (list (-(car m4a) e) (+(cadr m4a) e))) (setq m4a3 (list (-(car m4a1) 2) (-(cadr m4a1) 2))) (setq m4a4 (list (-(car m4a2) 2) (-(cadr m4a2) 2))) (setq m1aa (list (car m1a) (+(cadr m1a) b))) (setq m1ab (list (-(car m1a) b) (cadr m1a))) (setq m2aa (list (car m2a) (-(cadr m2a) b))) (setq m2ab (list (-(car m2a) b) (cadr m2a))) (setq m3aa (list (car m3a) (-(cadr m3a) b))) (setq m3ab (list (+(car m3a) b) (cadr m3a))) (command "donut" 0.01 f m1a m2a m3a m4a "" "line" m4aa m1aa "" "line" m1ab m2ab "" "line" m2aa m3aa "" "line" m3ab m4ab "" "line" m4a1 m4a3 "" "line" m4a2 m4a4 "") ;;;;Draw beam longitudinal steel at rest step (setq i (/ f 4)) (setq aap7 (list (car 2p7) (+(cadr 2p7) 1.7))) (setq bp7 (list (+(car 2p7) 1.7) (cadr 2p7))) (setq aap6 (list (car bp7) (+(cadr m3a) 7))) (setq bp6 (list (-(car aap6) 2) (cadr aap6))) (setq cp6 (list (car bp6) (+(cadr bp6) 2))) (setq cp7 (list (-(car m1a) 0.1) (+(cadr m1a) 1.7))) (setq dp7 (list (car cp7) (-(cadr cp7) 3.4))) (setq ep7 (list (+(car dp7) 2.1) (cadr dp7))) (setq ga (list (car 2p6) (+(cadr m2a) 1.5))) (setq gb (list (car ga) (+(cadr ga) 2))) (setq gc (list (-(car gb) 2) (cadr gb))) (setq ja (list (car cp7) (cadr ga))) (setq jb (list (car ja) (+(cadr ja) 2))) (setq jc (list (+(car jb) 2) (cadr jb))) (command "pline" cp6 "w" i i bp6 "a" aap6 "l" bp7 "a" aap7 "l" cp7 "a" dp7 "l" ep7 "" "pline" jc jb "a" ja "l" ga "a" gb "l" gc "w" 0 0 "") ;;;;Draw longitudinal beam stirrup at rest step (setq st1 (list (-(car p8) 5) (cadr aap7))) (setq st2 (list (car st1) (cadr ga))) (command "line" st1 st2 "") (setq mm (/(- sw 20) 20)) (setq count4 0) (while (< count4 mm) (setq nv (+ 5 (/ count4 0.5))) (setq nvv (- nv)) (command "array" "last" "" "R" 1 2 nvv "") (setq count4 (1+ count4)) );while ;Draw stirrup (setq ts1 (list (+(car m4ab) 5) (cadr cp7))) (setq ts2 (list (car ts1) (cadr ga))) (command "line" ts1 ts2 "") (setq count5 0) (while (< count5 mm) (setq nk (+ 5 (/ count5 0.5))) (command "array" "last" "" "R" 1 2 nk "") (setq count5 (1+ count5)) );while ;Draw stirrup ;;;;Draw reinforced steel for upper stair slab (setq fg (* tw 0.35)) (setq hg (* hh 0.35)) (setq ka1 (list (car d5) (-(cadr d5) 1.8))) ;Draw longitudinal steel (setq kaa (list (car d6) (+(cadr d6) 1.8))) (setq kaa1 (list (-(car kaa) (* 1.8 fg)) (+(cadr kaa) (* 1.8 hg)))) (setq kaa2 (list (+(car kaa1) 1.2) (+(cadr kaa1) 1.4))) (setq kaa3 (list (+(car kaa2) 1.5) (-(cadr kaa2) 1))) (setq kab (list (+(car kaa) (* tw 2.05)) (-(cadr kaa) (* hh 2.05)))) (setq kas (list (+(car ka1) tw tw) (-(cadr ka1) hh hh))) (setq ka2 (list (+(car d2) 4) (-(cadr d2) 8.3))) (setq ka3 (list (-(car ka2) 1) (-(cadr ka2) 1))) (setq ka4 (list (car ka3) (+(cadr d3) 8))) (setq ka5 (list (+(car ka4) 2) (cadr ka4))) (setq ka6 (list (car ka5) (+(cadr ka5) 2))) (setq kb1 (list (car s2) (-(cadr s2) 1.8))) (setq kbb (list (car c5) (+(cadr c5) 1.8))) (setq kbb1 (list (+(car kbb) (* 1.6 fg)) (-(cadr kbb) (* 1.6 hg)))) (setq kbb2 (list (-(car kbb1) 1.2) (-(cadr kbb1) 1.4))) (setq kbb3 (list (-(car kbb2) 1.5) (+(cadr kbb2) 1))) (setq kba (list (-(car kbb) (* tw 2.35)) (+(cadr kbb) (* hh 2.35)))) (setq kbs (list (-(car kb1) tw tw) (+(cadr kb1) hh hh))) (setq kb2 (list (-(car m4a) 1) (-(cadr s2) 11.5))) (setq kb3 (list (+(car kb2) 1) (-(cadr kb2) 1.5))) (setq kb4 (list (car kb3) (+(cadr pp2) 6))) (setq kb5 (list (-(car kb4) 2) (cadr kb4))) (setq kb6 (list (car kb5) (+(cadr kb5) 2))) (command "pline" ka6 ka5 "a" ka4 "l" ka3 "a" ka2 "l" ka1 kas kab kba kbs kb1 kb2 "a" kb3 "l" kb4 "a" kb5 "l" kb6 "" "pline" kaa3 kaa2 "a" kaa1 "l" kaa kbb kbb1 "a" kbb2 "l" kbb3 "") (setq ka1a (list (+(car ka1) 0.5 (/ fg 2)) (-(cadr ka1) 1.3 (/ hg 2)))) (setq kb1a (list (-(car kbb) (/ fg 2)) (+(cadr kbb) 1 (/ hg 2)))) (setq kak (-(car kb1a) (car ka1a))) (setq gf (+ 1 (/ kak fg))) (command "donut" 0.01 1 kb1a "") (setq count6 1) (setq kp (list (car kb1a) (cadr kb1a))) (while (<= count6 gf) (setq np (list (-(car kb1a) (* count6 fg)) (+(cadr kb1a) (* count6 hg)))) (command "COPY" "last" "" kp np "") (setq kp (list (car np) (cadr np))) (setq count6 (1+ count6)) ) (command "donut" 0.01 1 ka1a "") (setq coun1 1) (setq kp (list (car ka1a) (cadr ka1a))) (while (< coun1 6) (setq np (list (+(car ka1a) (* coun1 fg)) (-(cadr ka1a) (* coun1 hg)))) (command "COPY" "last" "" kp np "") (setq kp (list (car np) (cadr np))) (setq coun1 (1+ coun1)) ) (setq kb1b (list (-(car kb1) 1 (/ fg 2)) (+(cadr kb1) -0.4 (/ hg 2)))) (command "donut" 0.01 1 kb1b "") (setq coun2 1) (setq kb (list (car kb1b) (cadr kb1b))) (while (< coun2 6) (setq nb (list (-(car kb1b) (* coun2 fg)) (+(cadr kb1b) (* coun2 hg)))) (command "COPY" "last" "" kb nb "") (setq kb (list (car nb) (cadr nb))) (setq coun2 (1+ coun2)) ) ;;;;Draw reinforced steel for lower stair slab (setq ug1 (list (car p33) (-(cadr p33) 1.8))) (setq ug2 (list (+(car pa) 4) (-(cadr pa) 12))) (setq ug3 (list (-(car ug2) 1) (-(cadr ug2) 1.5))) (setq ug4 (list (car ug3) (+(cadr pb) 8))) (setq ug5 (list (+(car ug4) 2) (cadr ug4))) (setq ug6 (list (car ug5) (+(cadr ug5) 2))) (setq uj1 (list (car s21) (-(cadr s21) 1.8))) (setq uj2 (list (-(car m4ab) 0.5) (-(cadr s2) 8.3))) (setq uj3 (list (+(car uj2) 2) (-(cadr uj2) 1))) (setq uj4 (list (car uj3) (+(cadr pp2) 6))) (setq uj5 (list (-(car uj4) 2) (cadr uj4))) (setq uj6 (list (car uj5) (+(cadr uj5) 2))) (setq ppa (list (car pp1) (+(cadr pp1) 1.8))) (setq ppa1 (list (-(car ppa) (* 1.8 fg)) (-(cadr ppa) (* 1.8 hg)))) (setq ppa2 (list (+(car ppa1) 1.2) (-(cadr ppa1) 1.4))) (setq ppa3 (list (+(car ppa2) 1.5) (+(cadr ppa2) 1))) (setq ppb (list (car pp2) (+(cadr pp2) 1.8))) (setq ppb1 (list (+(car ppb) (* 1.6 fg)) (+(cadr ppb) (* 1.6 hg)))) (setq ppb2 (list (-(car ppb1) 1.2) (+(cadr ppb1) 1.4))) (setq ppb3 (list (-(car ppb2) 1.5) (-(cadr ppb2) 1))) (setq ppc (list (-(car ppb) (/ fg 2)) (-(cadr ppb) -1 (/ hg 2)))) (setq pbs (list (-(car uj1) tw tw) (-(cadr uj1) hh hh))) (setq pas (list (+(car ug1) tw tw) (+(cadr ug1) hh hh))) (setq pab (list (+(car ppa) (* tw 2.3)) (+(cadr ppa) (* hh 2.3)))) (setq pba (list (-(car ppb) (* tw 2.05)) (-(cadr ppb) (* hh 2.05)))) (command "pline" ug6 ug5 "a" ug4 "l" ug3 "a" ug2 "l" ug1 pas pab pba pbs uj1 uj2 "a" uj3 "l" uj4 "a" uj5 "l" uj6 "" "pline" ppa3 ppa2 "a" ppa1 "l" ppa ppb ppb1 "a" ppb2 "l" ppb3 "" "donut" 0.01 1 ppc "") (setq count7 1) (setq ku (list (car ppc) (cadr ppc))) (while (< count7 gf) (setq up (list (-(car ppc) (* count7 fg)) (-(cadr ppc) (* count7 hg)))) (command "COPY" "last" "" ku up "") (setq ku (list (car up) (cadr up))) (setq count7 (1+ count7)) ) (setq ug1a (list (+(car ug1) 0.5 (/ fg 2)) (+(cadr ug1) -0.7 (/ hg 2)))) (command "donut" 0.01 1 ug1a "") (setq coun3 1) (setq kh (list (car ug1a) (cadr ug1a))) (while (< coun3 6) (setq nm (list (+(car ug1a) (* coun3 fg)) (+(cadr ug1a) (* coun3 hg)))) (command "COPY" "last" "" kh nm "") (setq kh (list (car nm) (cadr nm))) (setq coun3 (1+ coun3)) ) (setq uj1a (list (-(car uj1) 1 (/ fg 2)) (-(cadr uj1) 1.59 (/ hg 2)))) (command "donut" 0.01 1 uj1a "") (setq coun4 1) (setq k1b (list (car uj1a) (cadr uj1a))) (while (< coun4 6) (setq n1b (list (-(car uj1a) (* coun4 fg)) (-(cadr uj1a) (* coun4 hg)))) (command "COPY" "last" "" k1b n1b "") (setq k1b (list (car n1b) (cadr n1b))) (setq coun4 (1+ coun4)) ) ;;;;Draw reinforced steel at rest step slab (setq rei (list (+(car m4ab) 6) (-(cadr s2) 2))) (command "donut" 0.01 1 rei"") (setq coun 1) (setq fz (list (car rei) (cadr rei))) (setq rin (/(-(car p8) (car rei) 6) 7)) (while (<= coun 7) (setq pie (list (+(car rei) (* coun rin)) (cadr rei))) (command "COPY" "last" "" fz pie "") (setq fz (list (car pie) (cadr pie))) (setq coun (1+ coun)) ) (setq reia (list (+(car s2) 1.5) (+(cadr rei) 0.7))) (setq reib (list (+(car reia) 1.5) (cadr reia))) (setq reic (list (car reia) (-(cadr reia) 1.4))) (setq dp7c (list (car 2p7) (cadr reic))) (setq dp7a (list (car dp7c) (+(cadr dp7c) 1.4))) (setq dp7b (list (-(car dp7a) 1.5) (cadr dp7a))) (command "pline" reib reia "a" reic "l" dp7c "a" dp7a "l" dp7b "") ;;;;Draw step detail section (setq tp1 (list (car p7) (cadr d4))) (setq tp2 (list (car tp1) (+(cadr tp1) 10))) (setq tp3 (list (-(car tp2) sw) (cadr tp2))) (setq tp4 (list (car tp3) (cadr tp1))) (setq tp5 (list (car tp3) (+(cadr tp3) hh))) (setq tp6 (list (car tp2) (cadr tp5))) (command "pline" tp4 tp1 tp2 tp3 tp4 "" "color" "r" "pline" tp3 tp5 tp6 tp2 "" "color" "w") ;;;;Draw reinforced steel for step section (setq sp1 (list (-(car tp1) 3) (+(cadr tp1) 2))) (setq sp2 (list (+(car tp4) 3) (cadr sp1))) (command "donut" 0.01 1 sp2 "") (setq tv (list (car sp2) (cadr sp2))) (setq ti (/ (- sw 6) 8)) (setq coutx 1) (while (<= coutx 8) (setq tn (list (+(car sp2) (* coutx ti)) (cadr sp2))) (command "COPY" "last" "" tv tn "") (setq tv (list (car tn) (cadr tn))) (setq coutx (1+ coutx)) ) (setq sp1a (list (car sp1) (+(cadr sp1) 0.9))) (setq sp1b (list (car sp1a) (-(cadr sp1a) 1.8))) (setq sp1c (list (-(car sp1b) 2) (cadr sp1b))) (setq sp2a (list (car sp2) (+(cadr sp2) 0.9))) (setq sp2b (list (car sp2a) (-(cadr sp2a) 1.8))) (setq sp2c (list (+(car sp2b) 2) (cadr sp2b))) (command "pline" sp1c sp1b "a" sp1a "l" sp2a "a" sp2b "l" sp2c "") ;;;;Draw rest step transverse section (setq rr (-(cadr s2) (cadr pp2))) (setq r1 (list (car p6) (cadr p33))) (setq r2 (list (car r1) (+(cadr r1) rr))) (setq r3 (list (-(car r2) sw sw 10) (cadr r2))) (setq r4 (list (car r3) (cadr r1))) (setq r5 (list (+(car r4) bw) (cadr r1))) (setq r6 (list (car r5) (-(cadr r2) 8))) (setq r7 (list (-(car r1) bw) (cadr r6))) (setq r8 (list (car r7) (cadr r1))) (command "line" r8 r1 r2 r3 r4 r5 r6 r7 r8 "" "color" "r" "line" r8 r5 "" "color" "w") ;;;;Draw rest step beam 1 section with stirrup (setq r1a (list (-(car r1) 3) (+(cadr r1) 3))) (setq r2a (list (car r1a) (-(cadr r2) 3))) (setq r7a (list (+(car r7) 3) (cadr r2a))) (setq r8a (list (car r7a) (cadr r1a))) (setq r8aa (list (car r8a) (-(cadr r8a) b))) (setq r8ab (list (-(car r8a) b) (cadr r8a))) (setq r8a1 (list (+(car r8a) e) (-(cadr r8a) e))) (setq r8a2 (list (-(car r8a) e) (+(cadr r8a) e))) (setq r8a3 (list (+(car r8a1) 2) (+(cadr r8a1) 2))) (setq r8a4 (list (+(car r8a2) 2) (+(cadr r8a2) 2))) (setq r1aa (list (car r1a) (-(cadr r1a) b))) (setq r1ab (list (+(car r1a) b) (cadr r1a))) (setq r2aa (list (car r2a) (+(cadr r2a) b))) (setq r2ab (list (+(car r2a) b) (cadr r2a))) (setq r7aa (list (car r7a) (+(cadr r7a) b))) (setq r7ab (list (-(car r7a) b) (cadr r7a))) (command "donut" 0.01 f r1a r2a r7a r8a "" "line" r8aa r1aa "" "line" r1ab r2ab "" "line" r2aa r7aa "" "line" r7ab r8ab "" "line" r8a1 r8a3 "" "line" r8a2 r8a4 "") ;;;;Draw rest step beam 2 section with stirrup (setq r5a (list (-(car r5) 3) (+(cadr r5) 3))) (setq r6a (list (car r5a) (-(cadr r3) 3))) (setq r3a (list (+(car r3) 3) (cadr r6a))) (setq r4a (list (car r3a) (cadr r5a))) (setq r4aa (list (car r4a) (-(cadr r4a) b))) (setq r4ab (list (-(car r4a) b) (cadr r4a))) (setq r4a1 (list (+(car r4a) e) (-(cadr r4a) e))) (setq r4a2 (list (-(car r4a) e) (+(cadr r4a) e))) (setq r4a3 (list (+(car r4a1) 2) (+(cadr r4a1) 2))) (setq r4a4 (list (+(car r4a2) 2) (+(cadr r4a2) 2))) (setq r5aa (list (car r5a) (-(cadr r5a) b))) (setq r5ab (list (+(car r5a) b) (cadr r5a))) (setq r6aa (list (car r6a) (+(cadr r6a) b))) (setq r6ab (list (+(car r6a) b) (cadr r6a))) (setq r3aa (list (car r3a) (+(cadr r3a) b))) (setq r3ab (list (-(car r3a) b) (cadr r3a))) (command "donut" 0.01 f r5a r6a r3a r4a "" "line" r4aa r5aa "" "line" r5ab r6ab "" "line" r6aa r3aa "" "line" r3ab r4ab "" "line" r4a1 r4a3 "" "line" r4a2 r4a4 "") ;;;;Draw reinforced steel for rest step slab section (setq rp6 (list (+(car r6) 6) (+(cadr r6) 2))) (setq rp7 (list (-(car r7) 6) (cadr rp6))) (setq dd (-(car rp7) (car rp6))) (command "donut" 0.01 1 rp6 "") (setq vt (list (car rp6) (cadr rp6))) (setq ji (/ dd 14)) (setq coutu 1) (while (<= coutu 14) (setq to (list (+(car rp6) (* coutu ji)) (cadr rp6))) (command "COPY" "last" "" vt to "") (setq vt (list (car to) (cadr to))) (setq coutu (1+ coutu)) ) (setq raa (list (car r3a) (+(cadr rp6) 0.7))) (setq rab (list (car raa) (-(cadr raa) 1.5))) (setq rac (list (+(car rab) 1.5) (cadr rab))) (setq rba (list (car r2a) (cadr raa))) (setq rbb (list (car rba) (cadr rab))) (setq rbc (list (-(car rbb) 1.5) (cadr rbb))) (command "pline" rac rab "a" raa "l" rba "a" rbb "l" rbc "") ;;;;Dimension (setq dm1 (list (-(car pb) 16) (/(+(cadr pb) (cadr pa)) 2))) (setq dm2 (list (/(+(car pd) (car pb)) 2) (-(cadr pb) 14))) (setq md3 (list (car s2) (cadr c3))) (setq dm3 (list (/(+(car p8)(car s2)) 2) (+(cadr md3) 14))) (setq dm4 (list (/(+(car p7)(car p8)) 2) (+(cadr p8) 14))) (setq dm5 (list (+(car p6) 14) (/(+(cadr p6) (cadr p7)) 2))) (setq dm6 (list (/(+(car p5)(car pp2)) 2) (-(cadr p5) 14))) (setq dm7 (list (+(car pd) 14) (/(+(cadr pd) (cadr pp1)) 2))) (setq dm8 (list (/(+(car d1)(car d2)) 2) (+(cadr d1) 14))) (setq md9 (list (-(car d2) 8) (cadr d2))) (setq dm9 (list (-(car d2) 14) (/(+(cadr d2) (cadr d3)) 2))) (setq md10 (list (car md3) (+(cadr md3) 45))) (setq dm10 (list (/(+(car d1)(car md10)) 2) (+(cadr d1) 14))) (setq dm11 (list (-(car d2) 42) (/(+(cadr pa) (cadr d2)) 2))) (setq md12 (list (-(car s2) 30) (cadr s2))) (setq dm12 (list (-(car d2) 28) (/(+(cadr md12) (cadr d2)) 2))) (setq dm13 (list (-(car d2) 28) (/(+(cadr pa) (cadr md12)) 2))) (setq md14 (list (car c4) (+(cadr c4) hh))) (setq dm14 (list (/(+(car md14)(car md3)) 2) (+(cadr md14) 14))) (setq md15 (list (-(car c3) tw tw tw) (+(cadr c3) hh hh hh))) (setq md16 (list (-(car md15) 2 tw) (+(cadr md15) hh))) (setq md16a (list (-(car md15) tw) (+(cadr md15) hh))) (setq dm15 (list (/(+(car md15)(car md16)) 2) (+(cadr md16) 14))) (setq dm16 (list (+(car md15) 14) (/(+(cadr md15) (cadr md16)) 2))) (setq md17 (list (+(car p33) tw) (+(cadr p33) hh hh))) (setq md18 (list (+(car md17) tw) (+(cadr md17) hh))) (setq dm17 (list (/(+(car md17)(car md18)) 2) (+(cadr md18) 14))) (setq dm18 (list (-(car md17) 14) (/(+(cadr md17) (cadr md18)) 2))) (setq md19 (list (+(car md18) tw) (+(cadr md18) hh))) (setq md20 (list (+(car md19) 2 tw) (+(cadr md19) hh))) (setq dm19 (list (/(+(car md19)(car md20)) 2) (+(cadr md20) 14))) (setq dm20 (list (+(car d6) 14) (/(+(cadr d4) (cadr d6)) 2))) (setq dm21 (list (-(car p5) 14) (/(+(cadr p5) (cadr pp3)) 2))) (command "luprec" 1 "" "dim1" "ver" pb pa dm1 "" "dim1" "hor" pb pd dm2 "" "dim1" "hor" md3 p8 dm3 "" "dim1" "hor" p8 p7 dm4 "" "dim1" "ver" p6 p7 dm5 "" "dim1" "hor" pp2 p5 dm6 "" "dim1" "ver" pd pp1 dm7 "" "dim1" "hor" d2 d1 dm8 "" "dim1" "ver" d3 md9 dm9 "" "dim1" "hor" d1 md10 dm10 "" "dim1" "ver" pa md9 dm11 "" "dim1" "ver" md12 md9 dm12 "" "dim1" "ver" pa md12 dm13 "" "dim1" "hor" md14 md3 dm14 "" "dim1" "ver" md15 md16a dm16 "" "dim1" "hor" md17 md18 dm17 "" "dim1" "ver" md17 md18 dm18 "" "dim1" "ver" d4 d6 dm20 "" "dim1" "ver" p5 pp3 dm21 "" ) (setq dm27 (list (/(+(car tp1) (car tp4)) 2) (-(cadr tp1) 14))) (setq dm28 (list (+(car tp1) 14) (/(+(cadr tp1) (cadr tp2)) 2))) (setq dm29 (list (+(car tp1) 14) (/(+(cadr tp2) (cadr tp6)) 2))) (setq dm30 (list (/(+(car r2) (car r3)) 2) (+(cadr r2) 14))) (setq dm31 (list (+(car r1) 14) (/(+(cadr r1) (cadr r2)) 2))) (setq md32 (list (car r4) (cadr r6))) (setq dm32 (list (-(car r4) 14) (/(+(cadr r5) (cadr r6)) 2))) (setq dm33 (list (/(+(car r4) (car r5)) 2) (-(cadr r4) 14))) (command "dim1" "hor" tp4 tp1 dm27 "" "dim1" "ver" tp1 tp2 dm28 "" "dim1" "ver" tp2 tp6 dm29 "" "dim1" "hor" r3 r2 dm30 "" "dim1" "ver" r1 r2 dm31 "" "dim1" "ver" r4 md32 dm32 "" "dim1" "hor" r4 r5 dm33 "" ) ;;;;Dtext for stair (setq sec (list (/(+(car pd)(car p5)) 2) (-(cadr pd) 30))) (setq rest (list (/(+(car s2)(car p8)) 2) (+(cadr c3) 38))) (setq main (list (/(+(car pd)(car p5)) 2) (-(cadr pd) 48))) (setq floor1 (list (-(car pa) 58) (cadr pa))) (setq floor2 (list (-(car d2) 58) (cadr d2))) (setq stepsec1 (list (/(+(car tp5)(car tp6)) 2) (+(cadr tp6) 16))) (setq stepsec2 (list (/(+(car r3)(car r2)) 2) (-(cadr r1) 20))) (princ"\n Text at main section. ") (command "color" "m" "dtext" "j" "c" sec 7 0 ;Text (princ"\n Text at rest step. ") "dtext" "j" "c" rest 7 0 (princ"\n Text at 1st floor. ") "dtext" "j" "mr" floor1 7 0 (princ"\n Text at 2nd floor. ") "dtext" "j" "mr" floor2 7 0 (princ"\n Text at step transverse section. ") "dtext" "j" "c" stepsec1 7 0 (princ"\n Text at rest step transverse section. ") "dtext" "j" "c" stepsec2 7 0 (princ"\n Text for stair name. ") "dtext" "j" "c" main 9 0 "color" "white") (alert " ERASE or COPY Needed Entities Architect: BANH NGUYEN Copyright 1997 Thanks For Using This LISP File") (command "redraw") (princ"\nSTAIR-A.LSP Draws Reinforced Concrete Stair. Start -> SAA")(princ) );defun SA4 ;STOPWATCH (setq stime (fix (getvar "date"))) (setq endtime 2452821);30-jun-2003 (if (> stime endtime) (progn (setq stime nil endtime nil) (princ) (alert " **********DUCAD OVERDUE********** Email to: nguyen6757@rogers.com ") (exit) ) (progn (setq stime nil endtime nil) (princ)) ) (defun c:SAA () (initget "1sa 2sa 3sa 4sa") (setq ANS (getkword "\nSelect lisp stair(1)stair(2)stair(3)stair(4)? ")) (cond ((wcmatch ANS "1sa")(sa1)) ((wcmatch ANS "2sa")(sa2)) ((wcmatch ANS "3sa")(sa3)) ((wcmatch ANS "4sa")(sa4)) );cond );bes (princ"\STAIR-A.LSP Draws Reinforced Concrete Stair. Start -> SAA")(princ)