各位大师 CAD先定两点画矩形??
各位大师 CAD先定两点画矩形?? 问的好 应该简单吧,先取一点,再取一点,再启动command命令画矩形 試試看這個(defun c:rg()
(setvar "CMDECHO" 0)
(setq pt1(getpoint "\n請指定矩形第一點位置:"))
(setq pt2(getpoint pt1 "\n請指定矩形第二點位置位置:"))
(command "rectang" pt1 pt2)
(setvar "CMDECHO" 1)
) ;矩形两对角线点及长或宽画矩形
(defun c:ldhjx()
(setq cm (getvar "cmdecho")
os (getvar "osmode")
)
(setvar "cmdecho" 0)
(while (setq p1 (getpoint "\n第1点:"))
(if (setq p3 (getpoint p1 "\n第2点:"))
(if (setq a (getdist p1 "\n矩形的长或宽:"))
(progn
(setq ang0 (angle p1 p3)
r (distance p1 p3)
)
(if (>= a r)
(alert "输入矩形的长或宽大于等于对角线长度,不能定义矩形!")
(progn
(setq b (sqrt (- (* r r) (* a a))))
(if (< a b) (setq x a a b b x))
(setq ang (atan (/ b a)))
(setq p2 (polar p1 (- ang0 ang) a)
p4 (polar p1 (+ ang0 (- (* 0.5 pi) ang)) b)
)
(setvar "osmode" 0)
(command "_pline" p1 p2 p3 p4 "c")
(setvar "osmode" os)
)
)
)
)
)
)
(setvar "cmdecho" cm)
(setvar "osmode" os)
(princ)
) (command "rectang" (getpoint "\n第一个角点") (getpoint "\n下一个角点")) pengfei2010 发表于 2018-3-23 09:10
(command "rectang" (getpoint "\n第一个角点") (getpoint "\n下一个角点"))
简单暴力{:1_1:}
页:
[1]