AutoLisp 源代码 实用程序11_rev3
- 格式:doc
- 大小:1.55 KB
- 文档页数:2
(defun c:ee (/ unit os cl st ld ld_os ld_oe lsx lsy lex ley ld_ns ld_ne p0 p01 p1
p2 ra)
(setq unit (getvar "lunits"))
(setq os (getvar "osmode"))
(if (= unit 2) (setq ra 3) (setq ra 0.118))
;(SETQ cl (getvar "CLAYER"))
(princ "\nSelect the circle")
(setq cir (entget (car (entsel))))
(princ "\nSelect the line")
(setq lin (entget (car (entsel))))
(if (= (cdr (assoc 0 cir)) "CIRCLE") (setq p0 (cdr (assoc 10 cir))))
(if (= (cdr (assoc 0 cir)) "TEXT") (setq p0 (cdr (assoc 11 cir))))
(if (= (cdr (assoc 0 lin)) "LINE")
(progn
(setq p1 (cdr (assoc 10 lin)))
(setq leo (assoc 11 lin))
)
)
(setq ang (angle p0 p1))
(setq len (cons 11 (polar p0 ang ra)))
(entmod (subst len leo lin))
(princ)
);end defun
(defun c:ee (/ unit os cl st ld ld_os ld_oe lsx lsy lex ley ld_ns ld_ne p0 p01 p1
p2 ra)
(setq unit (getvar "lunits"))
(setq os (getvar "osmode"))
(if (= unit 2) (setq ra 3) (setq ra 0.118))
;(SETQ cl (getvar "CLAYER"))
(princ "\nSelect the circle")
(setq cir (entget (car (entsel))))
(princ "\nSelect the line")
(setq lin (entget (car (entsel))))
(if (= (cdr (assoc 0 cir)) "CIRCLE") (setq p0 (cdr (assoc 10 cir))))
(if (= (cdr (assoc 0 cir)) "TEXT") (setq p0 (cdr (assoc 11 cir))))
(if (= (cdr (assoc 0 lin)) "LINE")
(progn
(setq p1 (cdr (assoc 10 lin)))
(setq leo (assoc 11 lin)) )
)
(setq ang (angle p0 p1))
(setq len (cons 11 (polar p0 ang ra)))
(entmod (subst len leo lin))
(princ)
);end defun