;; Kopiert Text an eine bestimmte Stelle und richtet ihn in einem bestimmten Winkel aus (defun C:R_TEXT (/ EN ENT TEXT_ELEM WINKEL EXITFLAG P1 P2) (defun *NEUERR* (MSG) (R_VAR) (princ MSG) (princ)) (setq ALTERR *ERROR* *ERROR* NEUERR C_E (getvar "CMDECHO") ; ECHO O_S (getvar "OSMODE") ; FANG EXITFLAG NIL ) (setvar "CMDECHO" 0) (setvar "OSMODE" 512) (defun R_VAR () (setvar "OSMODE" O_S) (setq *ERROR* ALTERR) (setvar "CMDECHO" C_E) (redraw) ) ;;---------------------------------------------- (while (not EXITFLAG) (setq TEXT_ELEM (entsel "\nTextelement wählen ")) (if (not TEXT_ELEM) (setq EXITFLAG t) (progn (redraw (car TEXT_ELEM) 3) (setq EN (car TEXT_ELEM)) (setq ENT (entget EN)) (if (or (= (cdr (assoc 0 ENT)) "TEXT") (= (cdr (assoc 0 ENT)) "MTEXT") ) (progn (setq P1 (cdr (assoc 10 ENT))) (setq P2 (getpoint "\nZielpunkt wählen")) (setq WINKEL (getangle P2 "\nBasiswinkel angeben")) (setq ENT (subst (cons 10 P2) (assoc 10 ENT) ENT)) (setq ENT (subst (cons 50 WINKEL) (assoc 50 ENT) ENT)) (entmod ENT) (entupd EN) ) (princ "\n \nGewähltes Element ist kein Textelement!") ) ) ) ) (R_VAR) (princ) ) (prompt "\n \n \nText ausrichten geladen. Aufruf durch \"r_text\" ") (princ)