啊业_48384 发表于 2018-3-22 23:26:14

各位大师 CAD先定两点画矩形??

各位大师 CAD先定两点画矩形??

Linhay 发表于 2018-3-23 07:01:58

问的好      

renhaitao_nice 发表于 2018-3-23 08:01:14

应该简单吧,先取一点,再取一点,再启动command命令画矩形

bssurvey 发表于 2018-3-23 08:07:15

試試看這個
(defun c:rg()                              
    (setvar "CMDECHO" 0)                     
    (setq pt1(getpoint "\n請指定矩形第一點位置:"))
    (setq pt2(getpoint pt1 "\n請指定矩形第二點位置位置:"))
    (command "rectang" pt1 pt2)         
    (setvar "CMDECHO" 1)                     
)      

yshf 发表于 2018-3-23 08:45:51

;矩形两对角线点及长或宽画矩形
(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)
)

pengfei2010 发表于 2018-3-23 09:10:03

(command "rectang" (getpoint "\n第一个角点") (getpoint "\n下一个角点"))

ysq101 发表于 2018-3-23 23:08:20

pengfei2010 发表于 2018-3-23 09:10
(command "rectang" (getpoint "\n第一个角点") (getpoint "\n下一个角点"))

简单暴力{:1_1:}
页: [1]
查看完整版本: 各位大师 CAD先定两点画矩形??