永发信息网

【autolisp】autolisp教程请高手用AutoLISP编写4个小程序:函数名为tuxing,要求...

答案:2  悬赏:10  手机版
解决时间 2021-02-27 01:47
  • 提问者网友:喧嚣尘世
  • 2021-02-26 22:00
【autolisp】autolisp教程请高手用AutoLISP编写4个小程序:函数名为tuxing,要求...
最佳答案
  • 五星知识达人网友:老鼠爱大米
  • 2021-02-26 22:59
【答案】 (一)
  (defun c:tuxing1 ()
  (setq Rd (getdist \n R=:))
  (setq Rx (getdist \n r=:))
  (setq p0 (getPoint \n Enter Center of Circle))
  (setq p1 (list(car p0) (+ (+ (cadr p0) Rd) 5)))
  (setq p2 (list(- (- (car p0) Rd) 5) (cadr p0)))
  (setq p3 (list(car p0) (- (- (cadr p0) Rd) 5)))
  (setq p4 (list(+ (+ (car p0) Rd) 5) (cadr p0)))
  (Command line p1 p3)
  (Command line p2 p4)
  (Command circle p0 Rd)
  (Command circle p0 RX)
  )
  (二)
  (defun c:tuxing2 ()
  (setq Rd (getdist \n R=:))
  (setq Rx (getdist \n r=:))
  (setq p0 (getPoint \n Enter Center of Circle))
  (setq a1 (list(+ (car p0) (* (cos (/ pi 4)) Rx)) (+ (cadr p0) (* (cos (/ pi 4)) Rx))))
  (setq a2 (list(- (car p0) (* (cos (/ pi 4)) Rx)) (cadr a1)))
  (setq a3 (list(car a2) (- (cadr p0) (* (cos (/ pi 4)) Rx))))
  (setq a4 (list(car a1) (cadr a3)))
  (setq b1 (list(+ (car p0) (* (cos (/ pi 4)) Rd)) (+ (cadr p0) (* (cos (/ pi 4)) Rd))))
  (setq b2 (list(- (car p0) (* (cos (/ pi 4)) Rd)) (cadr b1)))
  (setq b3 (list(car b2) (- (cadr p0) (* (cos (/ pi 4)) Rd))))
  (setq b4 (list(car b1) (cadr b3)))
  (Command line a1 a2 a3 a4 a1)
  (Command line b1 b2 b3 b4 b1)
  (Command circle p0 Rd)
  (Command circle p0 RX)
  )
  (三)
  (defun c:tuxing3 ()
  (setq r (getdist \n r=:))
  (setq p0 (getPoint \n Enter Center of Circle))
  (setq p1 (list(- (car p0) (* r 2)) (cadr p0)))
  setq p2 (list(+ (car p0) (* r 2)) (cadr p0)))
  ((Command circle p0 r)
  (Command circle p1 r)
  (Command circle p2 r)
  )
  (四)
  (defun c:tuxing4 ()
  (setq r (getdist \n r=:))
  (setq p0 (getPoint \n Enter Center of Circle))
  (setq a1 (list(+ (car p0) (* (cos (/ pi 4)) r)) (+ (cadr p0) (* (cos (/ pi 4)) r))))
  (setq a2 (list(- (car p0) (* (cos (/ pi 4)) r)) (cadr a1)))
  (setq a3 (list(car a2) (- (cadr p0) (* (cos (/ pi 4)) r))))
  (setq a4 (list(car a1) (cadr a3)))
  (Command line a1 a2 a3 a4 a1)
  (Command circle p0 r)
  )
  可以了,你试试吧!
全部回答
  • 1楼网友:过活
  • 2021-02-26 23:43
对的,就是这个意思
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯