;Place text on polyline or line. (uses MKLAYR GETSTYLE USTR) ; ; AUTHOR: HENRY C. FRANCIS ; 425 N. ASHE ST. ; SOUTHERN PINES, NC 28387 ; ; All rights reserved without prejudice. ; Copyright: 6-16-94 ; Edited: 6-16-94 ; (DEFUN C:LTXT ( / bkp1b bkp1m bkp1r bkp1l bkp1a bkp2b bkp2m bkp2r bkp2l bkp2a bkp3b bkp3m bkp3r bkp3l bkp3a) (if getstyle (getstyle "A")(progn (load "getstyle")(getstyle "A"))) (setq sytxt (ustr 1 "Enter text" sytxt "T")) (if c:mklayr nil (load"mklayr")) (c:svlayr) (setq modf "NOTE") (if gvpno nil (load"gvpno")) (gvpno) (if dimscl nil (load"dimscl")) (dimscl) (while (setq sel1 (nentselp "\nSelect line")) (if(eq(substr(cdr(assoc 8(entget(car sel1))))2 1)"E") (setq exornw "Existing") (setq exornw (ukword 1 "Existing New" "Label xisting or ew lines? " exornw)) ) (if (= "LINE" (cdr(assoc 0(entget(car sel1))))) (progn (setq endp1 (trans(cdr(assoc 10(entget(car sel1)))) 0 1) endp1 (list(car endp1)(cadr endp1))) (setq endp2 (trans(cdr(assoc 11(entget(car sel1)))) 0 1) endp2 (list(car endp2)(cadr endp2))) (setq lang (angle endp1 endp2)) (setq chkang (+ lang (getvar"viewtwist"))) (if (or (and(> chkang 1.868)(< chkang 5.01)) (and(> chkang (+(* 2 pi)1.868))(< chkang (+(* 2 pi)5.01))) ) (setq tang (+ pi lang)) (setq tang lang) );if (setq templ 87.5) (setq txtht (*(/ templ 1000.00)dimsc)) (setq pt1 (polar endp1 (angle endp1 endp2)(distance endp1(cadr sel1)))) (setq sytln (*(strlen sytxt)txtht)) (setq colr "2") );progn (progn (setq endp1 (trans(cdr(assoc 10(entget(car sel1)))) 0 1)) (setq endp2 (trans(cdr(assoc 10(entget(entnext(car sel1))))) 0 1)) (setq lang (angle endp1 endp2)) (setq chkang (+ lang (getvar"viewtwist"))) (if (or (and(> chkang 1.868)(< chkang 5.01)) (and(> chkang (+(* 2 pi)1.868))(< chkang (+(* 2 pi)5.01))) ) (setq tang (+ pi lang)) (setq tang lang) );if (setq templ 87.5) (setq txtht (*(/ templ 1000.00)dimsc)) (setq pt1 (polar endp1 (angle endp1 endp2)(distance (list(car endp1)(cadr endp1))(cadr sel1)))) (setq sytln (*(strlen sytxt)txtht)) (setq colr "2") );progn );if (cond ((eq exornw "Existing") (setq txtobl 0.2618) (setq llt "E") ) ((eq exornw "New") (setq txtobl 0.0) (setq llt "-") ) ) (c:mklayr) (setq txtlst (list (cons 0 "TEXT") (cons 1 sytxt) (cons 10 pt1) (cons 11 pt1) (cons 40 txtht) (cons 50 tang) (cons 51 txtobl) (cons 7 (getvar"textstyle")) (cons 72 1) (cons 73 2) ) ) (entmake txtlst) (setq oldsel sel1) );while (c:rslayr) (getstyle "") ; (setq sytxt nil) (princ) );defun