该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
(defun c:hq()
(setq pa (getpoint "输入左下点:")) ;输入左下桩坐标
(setq r1 (getreal "\n 桩基半径:")) ;输入桩基半径
(setq r2 (getreal "\n 立柱半径:")) ;输入立柱半径
(setq pb (getpoint "输入右上点:")) ;输入右上桩坐标
(setq r3 (getreal "\n 桩基半径:")) ;输入桩基半径
(setq r4 (getreal "\n 立柱半径:")) ;输入立柱半径
(setq w (getreal "\n 盖梁宽度:")) ;输入盖梁宽度
(setq bw (/ w 2)) ;盖梁宽度的一半
(setq a (car (pa)))
(setq b (cadr (pa)))
(setq c (car (pb)))
(setq d (cadr (pb)))
(setq e (- c a))
(setq f (- d b))
(setq l (sqrt(+ (* (- a c) (- a c)) (*(b-d) (b-d))))))
(setq ja (atan (/ f e)))
((setq jb (+ pi ja))
((setq jc (- ja (/ pi 2)))
(setq pc (polar pa bw jc))
(setq pg (polar pc (+ l 2.17)))
(setq pf (polar pc 2.17 jb))
(setq ph (polar pa (+ l 2.17)))
(setq pe (polar pa 2.17 jb))
(command "circle" pa r1)
(command "circle" pa r2)
(command "circle" pb r3)
(command "circle" pb r4)
(command "line" pe pf pg ph "c")
(prin1)
)