本帖最后由 作者 于 2008-10-15 8:28:55 编辑
我自已编的,哪个地方不对,请版主指点下。谢谢了。 (defun C:zz() (setq oldosmode (getvar "osmode")) (setvar "osmode" 0) (princ "\n请选择要旋转的单行文字!!!") (setq en (car (entsel))) (setvar "cmdecho" 0) (setq en1 (entget en)) (setq tym (cdr (assoc 0 en1))) (if ( = tym "TEXT") (progn (setq dd (cdr (assoc 10 en1))) (setq jd (cdr (assoc 50 en1))) (setq ysjd1 (cdr (textbox en1))) (setq ysjd (car ysjd1)) (setq x (car ysjd)) (setq y (cadr ysjd)) (setq a (atan (/ y x))) (setq jd1 (+ jd a)) (setq jl (/ (sqrt (+ (* x x) (* y y))) 2)) (setq xy (polar dd jd1 jl)) (command "rotate" en "" xy "180" ); 180 即需要旋转的角度,可以进行修改。 ) ) (if (/= tym "TEXT") (progn (princ "\n选择的不是单行文字!!!") (setvar "osmode" oldosmode) (setvar "cmdecho" 1) (princ) (exit) ) ) (setvar "osmode" oldosmode) (setvar "cmdecho" 1) (princ) )
|