;Place a detail title bubble with title text, underline and scale text. ; Uses DIMSCALE and LUNITS to format scale string and scale bubble ; and text. ; ; AUTHOR: HENRY C. FRANCIS ; 425 N. ASHE ST. ; SOUTHERN PINES, NC 28387 ; ; All rights reserved without prejudice. ; ; Copyright: 9-30-93 ; Edited: 6-17-94 ; ; Requirements: GETSTYLE.LSP (gets current style values and changes ; them as req'd for this function only.) ; (DEFUN C:DT ( / attdlg pt1 mpb mpe clayr dimsc txht dtttl ttlsz sclsz dscl ip0 ip1 ip2 llen layt2 layt6) (setvar "cmdecho" 0) (if dimscl nil (load"dimscl")) (dimscl) (setq attdlg (getvar"attdia") attrq (getvar"attreq") clayr (getvar"clayer") ntz 0 ;(* 1001 dimsc) txht (getvar"textsize") pt1 (getpoint "\nBubble insertion point ") pt1 (list(car pt1)(cadr pt1)ntz) mpb (polar pt1 (+(- 0(getvar"viewtwist"))pi) (* dimsc 0.375)) dtttl (strcase(ukword 1 "Title Section Detail" "\nEnter Title, Section or Detail " (if dtttl dtttl "DETAIL"))) ttlsz (* dimsc 0.1 1.75) ;Title height (175 template) llen (* (strlen dtttl) ttlsz) ;(+(/ (strlen dtttl) 12.0)2.0) sclsz (* dimsc 0.1 0.875) ;dimscale * 87.5 template sctyp (ukword 1 "Not To" "\nN.T.S. or To scale? (Not or To) " "T") prod "SECT" colr "1" modf "SYMB" e1ang (- 0 (getvar"viewtwist")) );setq (setvar "attreq" 0) (if getstyle (getstyle "A")(progn (load "getstyle")(getstyle "A"))) (c:mklayr) (if (or(=(substr clayr 2 9)"SECT7SYMB") mjrg) (progn (if (= (substr sctyp 1 1) "T") (if (or (= (getvar"lunits")4)(= (getvar"lunits")3)) (setq dscl (strcat (rtos(/ 1.0(/ dimsc 12.0))4) " = 1'-0\"")) (setq dscl (strcat "1\" = "(rtos dimsc 2 0)"'")) );if (setq dscl "NOT TO SCALE") );if (setq ip0 (polar mpb (+(- 0(getvar"viewtwist"))pi)(* dimsc 1.75)) ;(polar mpb e1ang (* dimsc 0.2)) ip1 (polar ip0 (+ e1ang(* 1.50 pi)) (* dimsc 0.1875)) ;was (* sclsz 1.75) ip2 (polar ip0 (+ e1ang(* 0.50 pi)) (* dimsc 0.0875)) ;was (* ttlsz 0.625) sclln (*(strlen dscl) sclsz) );setq (setvar "attdia" 0) (setvar "cecolor" "bylayer") (setq colr "2") (c:mklayr) (entmake (list (cons 0 "TEXT") (cons 10 ip1) (cons 40 sclsz) (cons 50 (- 0(getvar"viewtwist"))) (cons 1 dscl) ) );entmake (setq txten1 (entget(entlast)) txtbx1 (textbox txten1) txtln1 (abs(-(car(nth 1 txtbx1))(car(nth 0 txtbx1)))) colr "5") (c:mklayr) (entmake (list (cons 0 "TEXT") (cons 10 ip2) (cons 40 ttlsz) (cons 50 (- 0(getvar"viewtwist"))) (cons 1 dtttl) ) );entmake (setq txten2 (entget(entlast)) txtbx2 (textbox txten2) txtln2 (abs(-(car(nth 1 txtbx2))(car(nth 0 txtbx2)))) txtln (* dimsc 1.75) ;(+ ttlsz(max txtln1 txtln2)) mpe (polar mpb (+(- 0(getvar"viewtwist"))pi) txtln) );setq (entmake (list (cons 0 "LINE") (cons 10 mpb) (cons 11 mpe) ) );entmake (setq colr "1") (c:mklayr) (command ".insert" "b" pt1 dimsc dimsc e1ang) (command ".ddatte" "l") (setvar "clayer" clayr) (setvar "attdia" attdlg) (setvar "attreq" attrq) (setvar "textsize" txht) (getstyle "") (setvar "cmdecho" 1) (command) );progn );if (princ) );DEFUN C:DT