;;; ;;; ;;;> Author: Henry C. Francis ;;;> 425 N. Ashe St. ;;;> Southern Pines, NC 28387 ;;;> http://paracadd.com ;;;> All rights reserved. ;;; ;;;> COPYRIGHT: 1997-2001 ;;;> EDITED: 08-28-2006 ;;; (DEFUN ulbl_error (msg / ) (princ (strcat "\nError: " msg)) (IF old_ulblosmode (SETVAR "OSMODE" old_ulblosmode)) (IF old_ulblcmdecho (SETVAR "CMDECHO" old_ulblcmdecho)) (setq *error* orig_ulblerror) (if getstyle (getstyle "")) (princ) ) (DEFUN c:ulbl (/ epsize subspt this_ld_opt is_bulge nent_ent) (SETQ old_ulblosmode (GETVAR "OSMODE")) (SETQ old_ulblcmdecho (GETVAR "CMDECHO")) (IF mattag NIL (SETQ mattag 0) ) ;_ end of IF (IF gvpno nil (LOAD "gvpno") ) ;_ end of if (gvpno) (IF dimscl nil (LOAD "dimscl") ) ;_ end of IF (dimscl) (IF ld_opt NIL (SETQ ld_opt "Label") ) ;_ end of IF (IF offsetlbl NIL (SETQ offsetlbl 0) ) ;_ end of IF (IF txtsize NIL (LOAD "txtsize" "\nFile TXTSIZE.LSP not loaded! ")) ;;; (IF txtht ;;; NIL (txtsize nil) ;;; ) (IF ukword NIL (LOAD "ukword" "\nFile UKWORD.LSP not loaded! ") ) ;_ end of IF (WHILE (OR (SETQ nent (NENTSELP (STRCAT "\nSelect Line to " ld_opt))) (SETQ do_opts (ukword 0 "Options Select Layer" "ptions, Make last label = ayer, elect again or Enter to exit" nil ) ;_ end of ukword ) ;_ end of SETQ ) ;_ end of OR (IF (EQ do_opts "Options") (ulbl_opts) ) ;_ end of IF (IF (EQ do_opts "Layer") (PROGN (SETQ ulbl_txtent (ENTGET (ENTLAST)) ulbl_txtent (SUBST (CONS 1 (STRCASE nentl)) (ASSOC 1 ulbl_txtent) ulbl_txtent ) do_opts NIL ) (ENTMOD ulbl_txtent) ) ) (IF (OR (EQ do_opts "Options") (EQ do_opts "Select") (EQ do_opts "Layer")) (PROGN (SETQ nent (NENTSELP (STRCAT "\nSelect Line to " ld_opt))) (SETQ do_opts NIL) ) ;_ end of PROGN ) ;_ end of IF (IF nent (PROGN (SETQ blees (LENGTH (CAR (REVERSE nent)))) (SETQ pipe (ENTGET (CAR nent))) (IF (AND (EQ blees 2)(EQ (TYPE (CAAR (REVERSE nent))) 'ENAME)) (PROGN (SETQ nent_ent (ENTGET (CAAR (REVERSE nent))) nent_obj (CDR (ASSOC 0 nent_ent)) nent_name (CDR (ASSOC 2 nent_ent)) nent_entl (CDR (ASSOC 8 nent_ent)) ) ) (SETQ nent_ent nil nent_obj nil nent_name nil nentl (CDR (ASSOC 8 pipe)) ornentl nentl ) ) ) ) (COND ((AND nent (NOT (EQ nent_obj "INSERT"))) (IF (WCMATCH nentl "*|*") (PROGN (WHILE (/= (SUBSTR nentl 1 1) "|") (SETQ nentl (SUBSTR nentl 2)) ) ;_ end of while (SETQ nentl (SUBSTR nentl 2)) ) ;_ end of progn ) ;_ end of if (SETQ pproc (SUBSTR nentl 3 4)) (WHILE (EQ (SUBSTR pproc 1 1) "0") (IF (> (STRLEN pproc) 1) (SETQ pproc (SUBSTR pproc 2)) (SETQ pproc "?") ) ;_ end of if ) ;_ end of while (COND ((OR (WCMATCH (STRCASE nentl) "*INTERCON") (WCMATCH (STRCASE nentl) "*INDEXCON") (WCMATCH (STRCASE nentl) "*DTMOBSCR") (WCMATCH (STRCASE nentl) "*CONT-MNR") (WCMATCH (STRCASE nentl) "*CONT-MJR") ) ;_ end of OR (IF (AND (EQ (CDR (ASSOC 0 pipe)) "LWPOLYLINE") (EQ (LENGTH (CDR (ASSOC 10 pipe))) 2) ) ;_ end of AND (SETQ pproc (RTOS (CDR (ASSOC 38 pipe)) 2 0)) (SETQ pproc (RTOS (CADDDR (ASSOC 10 pipe)) 2 0)) ) ;_ end of IF ) ((WCMATCH (STRCASE nentl) "*UG_WATER*") (SETQ pproc "W")) ((WCMATCH (STRCASE nentl) "*MIDSTH") (SETQ pproc "W")) ((WCMATCH (STRCASE nentl) "*ECL#") (SETQ pproc (RTOS (CADDDR (ASSOC 10 pipe)) 2 0)) ) ((WCMATCH (STRCASE nentl) "*UGFO*") (SETQ pproc "FO")) ((WCMATCH (STRCASE nentl) "*UG_STORM*") (SETQ pproc "SD")) ((WCMATCH (STRCASE nentl) "*EGL#") (SETQ pproc "DRIVE")) ((WCMATCH (STRCASE nentl) "*SOIL*") (SETQ pproc "SOIL ROAD")) ((WCMATCH (STRCASE nentl) "*GR[A V][V L]?D*") (SETQ pproc "GRAVEL DRIVE")) ((WCMATCH (STRCASE nentl) "*GR[A V][V L]?R*") (SETQ pproc "GRAVEL ROAD")) ((WCMATCH (STRCASE nentl) "*GR[A V][V L]*") (SETQ pproc "GRAVEL DRIVE")) ((WCMATCH (STRCASE nentl) "*CONC*DR*") (SETQ pproc "CONCRETE DRIVE")) ((WCMATCH (STRCASE nentl) "*X?CONCRETE*") (SETQ pproc "CONCRETE DRIVE")) ((WCMATCH (STRCASE nentl) "*EQL#") (SETQ pproc "SIGN")) ((WCMATCH (STRCASE nentl) "*EVL#") (SETQ pproc "TREE")) ((WCMATCH (STRCASE nentl) "*EPL#") (SETQ pproc "PAVEMENT")) ((WCMATCH (STRCASE nentl) "*EFL#") (SETQ pproc "CURB")) ((WCMATCH (STRCASE nentl) "*EHL#") (SETQ pproc "FL")) ((WCMATCH (STRCASE nentl) "*FO") (SETQ pproc "FO")) ((WCMATCH (STRCASE nentl) "*EUL#") (SETQ pproc "OHE")) ((WCMATCH (STRCASE nentl) "*EX_POWER*") (SETQ pproc "OHE")) ((WCMATCH (STRCASE nentl) "*X?POWER*") (SETQ pproc "OHE")) ((WCMATCH (STRCASE nentl) "*EML#") (SETQ pproc "DRIVE")) ((WCMATCH (STRCASE nentl) "*ESL#") (SETQ pproc "SS")) ((WCMATCH (STRCASE nentl) "*EX-SS") (SETQ pproc "SS")) ((WCMATCH (STRCASE nentl) "*PS-SS_*") (SETQ pproc "SS")) ((WCMATCH (STRCASE nentl) "*SEWER*") (SETQ pproc "SS")) ((WCMATCH (STRCASE nentl) "*EBP#") (SETQ pproc "NAIL")) ((WCMATCH (STRCASE nentl) "*WATRLINE") (SETQ pproc "W")) ((WCMATCH (STRCASE nentl) "*-PIPES") (SETQ pproc "SD")) ((WCMATCH (STRCASE nentl) "*WATR*") (SETQ pproc "W")) ((OR (WCMATCH (STRCASE nentl) "*UG_GAS*") (WCMATCH (STRCASE nentl) "*GAS") ) ;_ end of OR (SETQ pproc "G") ) ((WCMATCH (STRCASE nentl) "*WATER") (SETQ pproc "W")) ((WCMATCH (STRCASE nentl) "*-EXWALKS") (SETQ pproc "WALK")) ((WCMATCH (STRCASE nentl) "*UG_SANITARY*") (SETQ pproc "SS") ) ((WCMATCH (STRCASE nentl) "*-WETLANDS") (SETQ pproc "?")) ((WCMATCH (STRCASE nentl) "ROW") (SETQ pproc "CMUD")) ((WCMATCH (STRCASE nentl) "TCE") (IF do_char (SETQ pproc "e") (SETQ pproc "TCE") ) ;_ end of IF ) ((WCMATCH (STRCASE nentl) "*STRTMISC") (SETQ pproc "?")) ((WCMATCH (STRCASE nentl) "*STRTTVTR") (SETQ pproc "?")) ((WCMATCH (STRCASE nentl) "*SPOTELEV") (SETQ pproc "SPOT")) ((WCMATCH (STRCASE nentl) "*-CURB") (SETQ pproc "CURB")) ((WCMATCH (STRCASE nentl) "*UTILMISC") (SETQ pproc "?")) ((WCMATCH (STRCASE nentl) "*WATERLINE") (SETQ pproc "W")) ((WCMATCH (STRCASE nentl) "*UTILHDWL") (SETQ pproc "WALL")) ((WCMATCH (STRCASE nentl) "*LOCOBJCT") (SETQ pproc "?")) ((OR (WCMATCH (STRCASE nentl) "*UTILSEWR") (AND (NOT(WCMATCH (STRCASE nentl) "*LINES")) (WCMATCH (STRCASE nentl) "*ES") ) ) ;_ end of OR (SETQ pproc "SS") ) ((WCMATCH (STRCASE nentl) "*UTILTELE") (SETQ pproc "TEL")) ((OR (WCMATCH (STRCASE nentl) "*EXROW") (AND (WCMATCH (STRCASE nentl) "ROW") (WCMATCH (STRCASE (GETVAR "DWGPREFIX")) "*19864*") ) (WCMATCH (STRCASE nentl) "X-ROW") (WCMATCH (STRCASE nentl) "*0ROW*") (WCMATCH (STRCASE nentl) "*STRW") (WCMATCH (STRCASE nentl) "*PROP-ROW") (WCMATCH (STRCASE nentl) "*RW") (WCMATCH (STRCASE nentl) "*80") (WCMATCH (STRCASE nentl) "*CPROAD?ROW") (WCMATCH (STRCASE nentl) "*CADASTSA_SHP") ) ;_ end of OR (IF do_char (SETQ pproc "E") (SETQ pproc "R/W") ) ;_ end of IF ) ((OR (WCMATCH (STRCASE nentl) "*-EXPIPE") (WCMATCH (STRCASE nentl) "*SD") ) ;_ end of OR (SETQ pproc "SD") ) ((WCMATCH (STRCASE nentl) "*X-RCP") (SETQ pproc "RCP") ) ((OR (WCMATCH (STRCASE nentl) "*-EXWATER") (WCMATCH (STRCASE nentl) "*EW") ) ;_ end of OR (SETQ pproc "W") ) ((OR (WCMATCH (STRCASE nentl) "*-TELEPHONE") (WCMATCH (STRCASE nentl) "*TEL") ) ;_ end of OR (SETQ pproc "UT") ) ((WCMATCH (STRCASE nentl) "*UG_ELEC*") (SETQ pproc "ELEC")) ((OR (WCMATCH (STRCASE nentl) "*OHE") (WCMATCH (STRCASE nentl) "*ELEC") (WCMATCH (STRCASE nentl) "*OH") ) ;_ end of OR (SETQ pproc "OHE") ) ((WCMATCH (STRCASE nentl) "*-CATV") (SETQ pproc "CATV")) ((WCMATCH (STRCASE nentl) "*UTILWELL") (SETQ pproc "WELL")) ((WCMATCH (STRCASE nentl) "*-BLDG") (SETQ pproc "BLDG")) ((WCMATCH (STRCASE nentl) "*UTILSTRM") (SETQ pproc "SD")) ((WCMATCH (STRCASE nentl) "*BLDGDECK") (SETQ pproc "BLDG")) ((WCMATCH (STRCASE nentl) "*-PROPERTY") (SETQ pproc "PL")) ((WCMATCH (STRCASE nentl) "*EP") (SETQ pproc "EP")) ((WCMATCH (STRCASE nentl) "*EP-ROAD") (SETQ pproc "EP")) ((OR (WCMATCH (STRCASE nentl) "*PROP*") (WCMATCH (STRCASE nentl) "*PL") ) ;_ end of OR (SETQ pproc (IF do_cmud "PL" "PL" ;"%%223" ) ;_ end of IF ) ;_ end of SETQ ) ((WCMATCH (STRCASE nentl) "*80") (SETQ pproc "PL")) ((= (STRLEN nentl) 14) (SETQ subspt (- (STRLEN nentl) 4))) ((= (STRLEN nentl) 12) (SETQ subspt (- (STRLEN nentl) 2))) ((WCMATCH (STRCASE nentl) "*UNK*") (SETQ unk_pproc (ustr 1 "Feature to label [Asphalt/Concrete/Gravel/Soil Drive] or enter specific label" unk_pproc T)) (COND ((WCMATCH (STRCASE unk_pproc) "A*")(SETQ pproc "ASPHALT DRIVE")) ((WCMATCH (STRCASE unk_pproc) "C*")(SETQ pproc "CONCRETE DRIVE")) ((WCMATCH (STRCASE unk_pproc) "G*")(SETQ pproc "GRAVEL DRIVE")) ((WCMATCH (STRCASE unk_pproc) "S*")(SETQ pproc "SOIL DRIVE")) (T (SETQ pproc (STRCASE unk_pproc))) )) ) ;cond (IF subspt (PROGN (SETQ p_size (SUBSTR nentl subspt 2)) (WHILE (EQ (SUBSTR p_size 1 1) "0") (IF (> (STRLEN p_size) 1) (SETQ p_size (SUBSTR p_size 2)) (SETQ p_size "?") ) ;_ end of if ) ;_ end of while (IF (AND (EQ (TYPE (READ p_size)) 'INT) do_spl_text) (COND ((<= (READ p_size) 24) (IF (EQ pproc "SS") (SETQ spl-txt "-RCP") (SETQ spl-txt "-DIP") ) ;_ end of IF ) ((AND (EQ (READ p_size) 54) (EQ pproc "WWD")) (SETQ spl-txt "-PCCP") ) ((> (READ p_size) 24) (IF (EQ pproc "SS") (SETQ spl-txt "-RCP") (SETQ spl-txt "-CSP") ) ;_ end of IF ) ) ;_ end of COND (SETQ spl-txt "") ) ;_ end of IF (COND ((EQ (SUBSTR p_size (STRLEN p_size)) "H") (SETQ sytxt (STRCAT (RTOS (/ (ATOF (SUBSTR p_size 1 1)) 2) 5 2) "\" " pproc spl-txt ) ; _ end of ; strcat ) ;_ end of setq ) ((EQ (SUBSTR p_size (STRLEN p_size)) "Q") (SETQ sytxt (STRCAT (RTOS (/ (ATOF (SUBSTR p_size 1 1)) 4) 5 2) "\" " pproc spl-txt ) ; _ end of ; strcat ) ;_ end of setq ) ((EQ (SUBSTR p_size (STRLEN p_size)) "E") (SETQ sytxt (STRCAT (RTOS (/ (ATOF (SUBSTR p_size 1 1)) 8) 5 2) "\" " pproc spl-txt ) ; _ end of ; strcat ) ;_ end of setq ) ((EQ (TYPE (READ (SUBSTR p_size (STRLEN p_size)))) 'SYM) (SETQ sytxt pproc) ) ((EQ (TYPE (READ (SUBSTR p_size (STRLEN p_size)))) 'INT) (SETQ sytxt (STRCAT p_size "\" " pproc spl-txt)) ) ) ;_ end of cond ;;; (IF do_cmud ;;; (SETQ txtht (* 0.075 dimsc)) ;;; (SETQ txtht (* 0.1 dimsc)) ;;; ) ;_ end of IF (PRINC (STRCAT "\nPipe is " sytxt)) (IF (EQ ld_opt "Label") (lpipe) ) ;_ end of if ) ;_ end of progn (PROGN (PRINC (STRCAT "\nEntity layer is " nentl)) ;_ end of princ (IF (EQ ld_opt "Label") (PROGN ; (SETQ sytxt (ustr 1 "Enter text for line label. " pproc T)) (SETQ sytxt pproc) ;;; (IF do_cmud ;;; (SETQ txtht (* 0.075 dimsc)) ;;; (SETQ txtht (* 0.1 dimsc)) ;;; ) ;_ end of IF (lpipe) ) ;_ end of progn ) ;_ end of if ) ;_ end of progn ) ;if (SETQ subspt nil) (gvpno) ) ((AND nent_ent (EQ nent_obj "INSERT")) (IF debug_ulbl (PROGN (PRINC (STRCAT "\nSelection is a \"" (IF nent_name nent_name "?") "\" INSERT!\non layer \"" (IF nent_entl nent_entl "?") "\"")) ) ) (C:TAGS) ) (T (PRINC (STRCAT "\nTHIS IS A \"" (IF nent_name nent_name "") "\" INSERT! "))(PRINC)) ) ;_ end of COND ) ;_ end of while (if getstyle (getstyle "")) (IF old_ulblosmode (SETVAR "OSMODE" old_ulblosmode) ) ;_ end of IF (IF old_ulblcmdecho (SETVAR "CMDECHO" old_ulblcmdecho) ) ;_ end of IF (SETQ *error* orig_ulblerror) (PRINC) ) ;_ end of DEFUN (DEFUN ulbl_opts () (IF ukword NIL (LOAD "ukword" "\nFile UKWORD.LSP not loaded! ") ) ;_ end of IF (SETQ ld_opt (ukword 1 "Label Display Toggle" (STRCAT "oggle material tag " (IF (= mattag 1) "Off" "On" ) ;_ end of IF ", abel, isplay?" ) ;_ end of STRCAT (IF ld_opt ld_opt "Label" ) ;_ end of if ) ;_ end of ukword ) ;_ end of setq (SETQ this_ld_opt ld_opt) (IF (EQ ld_opt "Toggle") (PROGN (SETQ mattag (ABS (1- mattag))) (IF (= mattag 1) (SETQ do_spl_text T) (SETQ do_spl_text NIL) ) ;_ end of IF ) ;_ end of PROGN ) ;_ end of IF (IF (EQ ld_opt "Label") (PROGN (IF txtsize NIL (LOAD "txtsize" "File TXTSIZE.LSP not loaded!") ) ;_ end of IF (txtsize nil) (SETQ offsetlbl (ureal 1 "Standard" "Enter label offset distance or tandard? (0 for none)" (IF offsetlbl offsetlbl 0 ) ;_ end of IF ) ;_ end of ureal ) ;_ end of SETQ ) ;_ end of PROGN ) ;_ end of IF ;;; (IF do_cmud ;;; (SETQ txtht (* 0.075 dimsc)) ;;; (SETQ txtht (* 0.1 dimsc)) ;;; ) ;_ end of IF (IF (EQ offsetlbl "Standard") (SETQ offsetlbl (* txtht 1.5)) ) ;_ end of IF ) ;_ end of DEFUN (DEFUN LPIPE (/ bkp1b bkp1m bkp1r bkp1l bkp1a bkp2b bkp2m bkp2r bkp2l bkp2a bkp3b bkp3m bkp3r bkp3l bkp3a ) (IF prod (SETQ old_prod prod) ) ;_ end of if (IF llt (SETQ old_llt llt) ) ;_ end of if (IF gvpno nil (LOAD "gvpno") ) ;_ end of if (gvpno) (IF dimscl nil (LOAD "dimscl") ) ;_ end of if (dimscl) (COND ((OR ;(AND (ASSOC 67 pipe)(EQ (CDR (ASSOC 67 pipe)) 1));if it is in paper space (WCMATCH (STRCASE (CDR (ASSOC 8 pipe))) "*BASE*|*") (WCMATCH (STRCASE (CDR (ASSOC 8 pipe))) "CSTECX*|*") (WCMATCH (STRCASE (CDR (ASSOC 8 pipe))) "CSTSVX*|*") (WCMATCH (STRCASE (CDR (ASSOC 8 pipe))) "CSTTPX*|*") (WCMATCH (STRCASE (GETVAR "DWGNAME")) "*BASE*") (WCMATCH (STRCASE (GETVAR "DWGNAME")) "CSTECX*") (WCMATCH (STRCASE (GETVAR "DWGNAME")) "CSTSVX*") (WCMATCH (STRCASE (GETVAR "DWGNAME")) "CSTTPX*") (EQ (SUBSTR (STRCASE nentl) 2 1) "E") (WCMATCH (STRCASE nentl) "*ES") (WCMATCH (STRCASE nentl) "*UG_*") (WCMATCH (STRCASE nentl) "*EX_POWER*") (WCMATCH (STRCASE nentl) "*INTERCON") (WCMATCH (STRCASE nentl) "*INDEXCON") (WCMATCH (STRCASE nentl) "*DTMOBSCR") (WCMATCH (STRCASE nentl) "*E?L#") (WCMATCH (STRCASE nentl) "*EBP#") (WCMATCH (STRCASE nentl) "*WATRLINE") (WCMATCH (STRCASE nentl) "*-PIPES") (WCMATCH (STRCASE nentl) "*EPROP*") (WCMATCH (STRCASE nentl) "*PL") (WCMATCH (STRCASE nentl) "*FO") (WCMATCH (STRCASE nentl) "*PROPLINE*") (WCMATCH (STRCASE nentl) "*PROP-LOTS*") (WCMATCH (STRCASE nentl) "*CPROAD?ROW") (WCMATCH (STRCASE nentl) "*-WATER") (WCMATCH (STRCASE nentl) "*EW") (WCMATCH (STRCASE nentl) "*GAS") (WCMATCH (STRCASE nentl) "*WATER") (WCMATCH (STRCASE nentl) "*MIDSTH") (WCMATCH (STRCASE nentl) "*-EXWALKS") (WCMATCH (STRCASE nentl) "*-EXSANSEW") (WCMATCH (STRCASE nentl) "*EX-SS") (WCMATCH (STRCASE nentl) "*-WETLANDS") (WCMATCH (STRCASE nentl) "*PROP-ROW") (WCMATCH (STRCASE nentl) "*ERW") (WCMATCH (STRCASE nentl) "*EX-SS-RW") (AND (WCMATCH (STRCASE nentl) "ROW") (NOT (WCMATCH (STRCASE (GETVAR "DWGPREFIX")) "*19864*")) ) ;;; (WCMATCH (STRCASE nentl) "TCE") (WCMATCH (STRCASE nentl) "*STRTMISC") (WCMATCH (STRCASE nentl) "*STRTTVTR") (WCMATCH (STRCASE nentl) "*SPOTELEV") (WCMATCH (STRCASE nentl) "*-CURB") (WCMATCH (STRCASE nentl) "*UTILMISC") (WCMATCH (STRCASE nentl) "*WATERLINE") (WCMATCH (STRCASE nentl) "*UTILHDWL") (WCMATCH (STRCASE nentl) "*LOCOBJCT") (WCMATCH (STRCASE nentl) "*UTILSEWR") (WCMATCH (STRCASE nentl) "*SEWER*") (WCMATCH (STRCASE nentl) "*UTILTELE") (WCMATCH (STRCASE nentl) "*80") (WCMATCH (STRCASE nentl) "*-EXPIPE") (WCMATCH (STRCASE nentl) "*-EXWATER") (WCMATCH (STRCASE nentl) "*-TELEPHONE") (WCMATCH (STRCASE nentl) "*-ELECTRIC") (WCMATCH (STRCASE nentl) "*-PROPERTY") (WCMATCH (STRCASE nentl) "*EP") (WCMATCH (STRCASE nentl) "*EP-ROAD") (WCMATCH (STRCASE nentl) "*CADASTSA_SHP") (WCMATCH (STRCASE nentl) "*OHE") (WCMATCH (STRCASE nentl) "*-CATV") (WCMATCH (STRCASE nentl) "*UTILWELL") (WCMATCH (STRCASE nentl) "*-BLDG") (WCMATCH (STRCASE nentl) "*UTILSTRM") (WCMATCH (STRCASE nentl) "*BLDGDECK") (WCMATCH (STRCASE nentl) "*ELEC") (WCMATCH (STRCASE nentl) "*TEL") (WCMATCH (STRCASE nentl) "*SD") (WCMATCH (STRCASE nentl) "*CH0???7ES##P") (WCMATCH (STRCASE nentl) "*C?0????ES##P") (WCMATCH (STRCASE ornentl) "CSTSVX##|*") (WCMATCH (STRCASE ornentl) "CSTECX##|*") ) ;_ end of or (SETQ exornw "Existing") ) ((OR(AND (NOT(WCMATCH ornentl "*|*")) (EQ (SUBSTR nentl 2 1) "F") ) (AND (EQ (SUBSTR ornentl 9 1) "|") (EQ (SUBSTR ornentl 11 1) "F") ) ) (SETQ exornw "Future")) (T (SETQ exornw "New")) ) ;_ end of cond (COND ((EQ "LINE" (CDR (ASSOC 0 (ENTGET (CAR nent))))) (SETQ endp1 (TRANS (CDR (ASSOC 10 (ENTGET (CAR nent)))) 0 1) ;_ end of TRANS ) ;_ end of SETQ (SETQ endp2 (TRANS (CDR (ASSOC 11 (ENTGET (CAR nent)))) 0 1) ;_ end of TRANS ) ;_ end of SETQ (SETQ lang (ANGLE endp1 endp2)) (SETQ sytln (* (STRLEN sytxt) txtht)) ) ((OR (EQ "POLYLINE" (CDR (ASSOC 0 (ENTGET (CAR nent))))) (EQ "VERTEX" (CDR (ASSOC 0 (ENTGET (CAR nent))))) ) ;_ end of OR (SETQ endp1 (TRANS (CDR (ASSOC 10 (ENTGET (CAR nent)))) 0 1) ;_ end of TRANS ) ;_ end of SETQ (SETQ endp2 (TRANS (CDR (ASSOC 10 (ENTGET (ENTNEXT (CAR nent))))) 0 1) ;_ end of TRANS ) ;_ end of setq (IF (ASSOC 42 pipe) (IF (> (ABS (SETQ bfact (CDR (ASSOC 42 pipe)))) 0) (PROGN (bcen) (SETQ is_bulge T)) ;_ end of progn (SETQ lang (ANGLE endp1 endp2) is_bulge nil ) ;_ end of setq ) ;_ end of if (SETQ lang (ANGLE endp1 endp2) is_bulge nil ) ;_ end of setq ) ;_ end of IF ) ((EQ "ARC" (CDR (ASSOC 0 (ENTGET (CAR nent))))) (PROGN (PRINC "\nI know its an ARC") (bcen) (SETQ is_bulge T) ) ;_ end of progn ) ((EQ "LWPOLYLINE" (CDR (ASSOC 0 (ENTGET (CAR nent))))) (SETQ lwptslst nil) (SETQ lwplent (ENTGET (CAR nent))) (FOREACH n lwplent (IF (EQ (CAR n) 10) (SETQ lwptlst (APPEND lwptlst (LIST (CDR n)))) ) ;_ end of if ) ;_ end of foreach (SETQ pntcnt 0 pntlen (LENGTH lwptlst) ) ;_ end of setq (WHILE (< pntcnt (1- pntlen)) (IF (AND (< (ABS (SIN (- (ANGLE (NTH pntcnt lwptlst) (NTH (1+ pntcnt) lwptlst) ) ;_ end of angle (ANGLE (NTH pntcnt lwptlst) (CADR nent)) ) ;_ end of - ) ;_ end of SIN ) ;_ end of ABS 0.04 ) ;_ end of < (< (DISTANCE (NTH pntcnt lwptlst) (CADR nent)) (DISTANCE (NTH pntcnt lwptlst) (NTH (1+ pntcnt) lwptlst)) ) ;_ end of < (< (DISTANCE (NTH (1+ pntcnt) lwptlst) (CADR nent)) (DISTANCE (NTH pntcnt lwptlst) (NTH (1+ pntcnt) lwptlst)) ) ;_ end of < ) ;_ end of AND (PROGN (SETQ endp1 (TRANS (NTH pntcnt lwptlst) 0 1)) (SETQ endp2 (TRANS (NTH (1+ pntcnt) lwptlst) 0 1)) (SETQ lang (ANGLE endp1 endp2) is_bulge nil ) ;_ end of setq ) ;_ end of progn ) ;_ end of IF (SETQ pntcnt (1+ pntcnt)) ) ;_ end of while ) ) ;_ end of COND (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)) ) ;_ end of and ) ;_ end of or (SETQ tang (+ PI lang)) (SETQ tang lang) ) ;_ end of IF ;;; (IF do_cmud ;;; (SETQ templ 75.0) ;;; (SETQ templ 100.0) ;;; ) ;_ end of IF ;;; (SETQ txtht (* (/ templ 1000.00) dimsc)) (IF is_bulge (SETQ pt1 textpt) ;;; (IF (AND ;;; (/= (CDR (ASSOC 0 (ENTGET (CAR nent)))) "LINE") ;;; (> (DISTANCE (LIST (CAR endp1) (CADR endp1) 0) ;;; (LIST (CAADR nent) (CADADR nent) 0) ;;; ) ;;; 500 ;;; ) ;;; ) (SETQ pt1 (POLAR (LIST (CAR endp1) (CADR endp1) 0) (ANGLE (LIST (CAR endp1) (CADR endp1) 0) (LIST (CAR endp2) (CADR endp2) 0) ) ;_ end of angle (DISTANCE (LIST (CAR endp1) (CADR endp1) 0) (LIST (CAADR nent) (CADADR nent) 0) ) ;_ end of DISTANCE ) ;_ end of polar ) ;_ end of setq ;;; (SETQ pt1 textpt) ;;; ) ) ;_ end of IF (SETQ sytln (* (STRLEN sytxt) txtht)) (IF (/= offsetlbl 0) (SETQ pt1 (POLAR pt1 (+ tang (* PI 0.5)) offsetlbl)) ) ;_ end of IF (COND ((EQ exornw "Existing") (SETQ txtobl (IF do_cmud 0 0.2618 ) ;_ end of IF colr "1" llt "E" ) ;_ end of SETQ ) ((EQ exornw "New") (SETQ txtobl 0.0 colr (IF do_cmud "2" "6" ) ;_ end of IF llt "-" ) ;_ end of SETQ ) ((EQ exornw "Future") (SETQ txtobl 0.0 colr "6" llt "F" sytxt (STRCAT "FUTURE " sytxt) ) ;_ end of SETQ ) ) ;_ end of cond (SETQ txtlnm (STRCAT "C" llt prod colr "NOTE")) (IF (NOT (TBLSEARCH "layer" txtlnm)) (COMMAND ".layer" "m" txtlnm "c" colr txtlnm "") ) ;_ end of if (IF (TBLSEARCH "STYLE" "SIMPLEX") nil (COMMAND "-style" "SIMPLEX" "simplex" 0 1 0 "N" "N" "N") ) ;_ end of IF (SETQ txtlst (LIST (CONS 0 "TEXT") (CONS 1 (COND ((EQ (STRCASE sytxt) "PL") "P") ((AND sytxt_pfx (NOT (AND (WCMATCH sytxt_pfx "*#\"*")(WCMATCH sytxt "*#\"*"))) ) (STRCASE(STRCAT sytxt_pfx sytxt))) (T (STRCASE sytxt)) ) ;_ end of COND ) ;_ end of CONS (CONS 8 (IF (EQ (STRCASE sytxt) "PL") "PL" txtlnm ) ;_ end of IF ) ;_ end of CONS (CONS 10 pt1) (CONS 11 pt1) (CONS 40 txtht) (CONS 50 tang) (CONS 51 txtobl) (CONS 7 (IF do_cmud "Simplex" (GETVAR "textstyle") ) ;_ end of IF ) ;_ end of CONS (CONS 72 1) (CONS 73 2) ) ;_ end of list ) ;_ end of setq (IF (AND sytxt (/= sytxt "")) (ENTMAKE txtlst) ) ;_ end of IF (IF (EQ sytxt "PL") (PROGN (SETQ txtlst2 (LIST (CONS 0 "TEXT") (CONS 1 "L") (CONS 8 (IF (EQ sytxt "PL") "PL" txtlnm ) ;_ end of IF ) ;_ end of CONS (CONS 10 (POLAR (POLAR pt1 tang (/ txtht 3.0)) (+ (* 1.5 PI) tang) (/ txtht 4.0) ) ;_ end of POLAR ) ;_ end of CONS (CONS 11 (POLAR (POLAR pt1 tang (/ txtht 3.0)) (+ (* 1.5 PI) tang) (/ txtht 4.0) ) ;_ end of POLAR ) ;_ end of CONS (CONS 40 txtht) (CONS 50 tang) (CONS 51 txtobl) (CONS 7 (IF do_cmud "Simplex" (GETVAR "textstyle") ) ;_ end of IF ) ;_ end of CONS (CONS 72 1) (CONS 73 2) ) ;_ end of list ) ;_ end of setq (ENTMAKE txtlst2) ) ;_ end of PROGN ) ;_ end of IF (IF old_prod (SETQ prod old_prod) ) ;_ end of if (IF old_llt (SETQ llt old_llt) ) ;_ end of if (PRINC) ) ;_ end of DEFUN (DEFUN bcen () (SETQ ename (CAR nent)) (SETQ edata (ENTGET ename)) (IF (ASSOC 42 edata) (IF (> (ABS (SETQ bfact (CDR (ASSOC 42 edata)))) 0) (PROGN (SETQ chordlen (DISTANCE (CDR (ASSOC 10 edata)) (CDR (ASSOC 10 (ENTGET (ENTNEXT ename)))) ) ;_ end of distance chordang (ANGLE (CDR (ASSOC 10 edata)) (CDR (ASSOC 10 (ENTGET (ENTNEXT ename)))) ) ;_ end of angle arcrad (/ (+ (* 4 (/ (* chordlen bfact) 2) (/ (* chordlen bfact) 2) ) ;_ end of * (* chordlen chordlen) ) ;_ end of + (* 8 (/ (* chordlen bfact) 2) ) ;_ end of * ) ;_ end of / radang (+ (- chordang (* (ATAN bfact) 2)) (/ PI 2)) radpt (POLAR (CDR (ASSOC 10 edata)) radang arcrad) textpt (POLAR radpt (ANGLE radpt (CADR nent)) (ABS arcrad)) lang (+ (ANGLE radpt (CADR nent)) (/ PI 2)) ) ;_ end of setq ) ;_ end of progn ) ;_ end of if (IF (EQ (CDR (ASSOC 0 edata)) "ARC") (PROGN (SETQ ctr_pt (CDR (ASSOC 10 edata)) strt_pt (POLAR ctr_pt (CDR (ASSOC 50 edata)) (CDR (ASSOC 40 edata)) ) ;_ end of POLAR end_pt (POLAR ctr_pt (CDR (ASSOC 51 edata)) (CDR (ASSOC 40 edata)) ) ;_ end of POLAR bf_ang (- (ANGLE strt_pt ctr_pt) (ANGLE strt_pt end_pt) (/ PI 2) ) ;_ end of - bfact (/ (SIN bf_ang) (COS bf_ang)) chordlen (DISTANCE strt_pt end_pt) chordang (ANGLE strt_pt end_pt) arcrad (CDR (ASSOC 40 edata)) radang (+ (- chordang (* (ATAN bfact) 2)) (/ PI 2)) radpt ctr_pt textpt (POLAR radpt (ANGLE radpt (CADR nent)) (ABS arcrad)) lang (+ (ANGLE radpt (CADR nent)) (/ PI 2)) ) ;_ end of SETQ ) ;_ end of PROGN ) ;_ end of IF ) ;_ end of if ) ;_ end of defun ;|«Visual LISP© Format Options» (72 2 40 2 T "end of " 60 9 2 0 0 T T nil T) ***Don't add text below the comment!***;