(setq DV:FILE-NAME (strcase (getvar "DWGNAME")));Retrieve Drawing Name
(setq DV:FLOOR-NUMBER (substr DV:FILE-NAME 5 2));Retrieve Floor Number
(cond
((= DV:FLOOR-NUMBER 01) (progn (setq DV:DRAWING-TITLE "1ST FLOOR PLAN")))
((= DV:FLOOR-NUMBER 02) (progn (setq DV:DRAWING-TITLE "2ND FLOOR PLAN")))
((= DV:FLOOR-NUMBER 03) (progn (setq DV:DRAWING-TITLE "3RD FLOOR PLAN")))
((= DV:FLOOR-NUMBER 04) (progn (setq DV:DRAWING-TITLE "4TH FLOOR PLAN")))
((= DV:FLOOR-NUMBER 05) (progn (setq DV:DRAWING-TITLE "5TH FLOOR PLAN")))
)end Cond
01:FIRST FLOOR
02:SECOND FLOOR
03:THIRD FLOOR
04:FOURTH FLOOR
05:FIFTH FLOOR
(setq DV:DRAWING-TITLE
(cadr
(assoc DV:FLOOR-NUMBER
'((01 "1ST FLOOR PLAN")
(02 "2ND FLOOR PLAN")
(03 "3RD FLOOR PLAN")
(04 "4TH FLOOR PLAN")
(05 "5TH FLOOR PLAN")
)
)
)
); setq
(setq DV:DRAWING-TITLE
(cadr
(assoc DV:FLOOR-NUMBER
'(("01" "1ST FLOOR PLAN")
("02" "2ND FLOOR PLAN")
("03" "3RD FLOOR PLAN")
("04" "4TH FLOOR PLAN")
("05" "5TH FLOOR PLAN")
)
)
)
); setq
(defun LM:ordinal_Bulgarian ( n / nl L s )
(if (numberp n)
(progn
(setq nl (read (last (setq L (mapcar 'chr (vl-string->list (setq s (vl-prin1-to-string n))))))))
(strcat s
(cond
( (nth n '("лев" "ви" "ри")) )
( (vl-position n '(7 8)) "ми")
( (vl-position n '(3 4 5 6 9 10 11 12 13 14 15 16 17 18 19)) "ти")
( (zerop nl)
(if (vl-every 'zerop (mapcar 'read (list (car (reverse L)) (cadr (reverse L))))) "ен" "ти")
)
( (nth nl '(nil "ви" "ри")) )
( (vl-position nl '(7 8)) "ми")
(T "ти")
); cond
)
); progn
); if
); defun
Here's another:Doh ! 😁Code - Auto/Visual Lisp: [Select]
) (cond ( "th" ) ) )Code - Auto/Visual Lisp: [Select]
_$ (floornumber "3") "3RD FLOOR PLAN" _$ (floornumber "13") "13TH FLOOR PLAN"
@Ron ;) :Code - Auto/Visual Lisp: [Select]
_$ (_floornumber "13") "13RD FLOOR PLAN"
(defun floornumber ( str )
( (lambda ( n ) (strcase (strcat (itoa n) (LM:ordinal n) " FLOOR PLAN"))) (atoi str))
)
(defun LM:ordinal ( n )
(cond
( (< 10 (rem n 100) 14) "th")
( (nth (rem n 10) '(nil "st" "nd" "rd")))
( "th" )
)
)
_$ (floornumber "3")
"3RD FLOOR PLAN"
_$ (floornumber "13")
"13TH FLOOR PLAN"
("B1" "BASEMENT 1 FLOOR PLAN")
("SB" "SUB-BASEMENT 1 FLOOR PLAN")
("M1" "MEZZANINE 1 FLOOR PLAN")
("R1" "ROOF 1 FLOOR PLAN")
("P1" "PENTHOUSE 1 FLOOR PLAN")
("GF" "GROUND FLOOR PLAN")
(setq DV:FLOOR-NUMBER "M1")
(eval
(cons 'cond
(mapcar '(lambda (n m)
(list (eval (cons 'eq (list DV:FLOOR-NUMBER 'n)))
(cons 'setq
(list 'DV:DRAWING-TITLE
(strcat m
" FLOOR PLAN"
)
)
)
)
)
'("B1" "SB" "M1" "R1" "P1" "GF")
'("BASEMENT 1 " "SUB-BASEMENT 1 " "MEZZANINE 1 " "ROOF 1 " "PENTHOUSE 1 " "GROUND ")
)
)
)
;"MEZZANINE 1 FLOOR PLAN"
hanhphuc
(setq DV:FLOOR-NUMBER "M1")
(eval
(cons 'cond
(mapcar '(lambda (n m)
(list (eval (cons 'eq (list DV:FLOOR-NUMBER 'n)))
(cons 'setq
(list 'DV:DRAWING-TITLE
(strcat m
" FLOOR PLAN"
)
)
)
)
)
'("B1" "SB" "M1" "R1" "P1" "GF")
'("BASEMENT 1 " "SUB-BASEMENT 1 " "MEZZANINE 1 " "ROOF 1 " "PENTHOUSE 1 " "GROUND ")
)
)
)
;"MEZZANINE 1 FLOOR PLAN"
(setq DV:FLOOR-NUMBER "B1")
(eval
(cons 'cond
(mapcar '(lambda (n m)
(list (eval (cons 'eq (list DV:FLOOR-NUMBER 'n)))
(cons 'setq
(list 'DV:DRAWING-TITLE
(strcat m
" FLOOR PLAN"
)
)
)
)
)
'("B9" "B8" "B7" "B6" "B5" "B4" "B3" "B2" "B1" "S9" "S8" "S7" "S6" "S5" "S4" "S3" "S2" "S1" "SB" "M9" "M8" "M7" "M6" "M5" "M4" "M3" "M2" "M1"
"R9" "R8" "R7" "R6" "R5" "R4" "R3" "R2" "R1" "P9" "P8" "P7" "P6" "P5" "P4" "P3" "P2" "P1" "G1" "GF" "00"
"01" "02" "03" "04" "05" "06" "07" "08" "09" "10" "11" "12" "13" "14" "15" "16" "17" "18" "19" "20" "21" "22" "23" "24" "25" "26" "27" "28" "29" "30"
"31" "32" "33" "34" "35")
'("BASEMENT 9" "BASEMENT 8" "BASEMENT 7" "BASEMENT 6" "BASEMENT 5" "BASEMENT 4" "BASEMENT 3" "BASEMENT 2" "BASEMENT 1" "SUB-BASEMENT 9" "SUB-BASEMENT 8" "SUB-BASEMENT 7"
"SUB-BASEMENT 6" "SUB-BASEMENT 5" "SUB-BASEMENT 4" "SUB-BASEMENT 3" "SUB-BASEMENT 2" "SUB-BASEMENT 1" "SUB-BASEMENT" "MEZZANINE 9" "MEZZANINE 8" "MEZZANINE 7"
"MEZZANINE 6" "MEZZANINE 5" "MEZZANINE 4" "MEZZANINE 3" "MEZZANINE 2" "MEZZANINE 1" "ROOF 9" "ROOF 8" "ROOF 7" "ROOF 6" "ROOF 5" "ROOF 4" "ROOF 3" "ROOF 2" "ROOF 1"
"PENTHOUSE 9" "PENTHOUSE 8" "PENTHOUSE 7" "PENTHOUSE 6" "PENTHOUSE 5" "PENTHOUSE 4" "PENTHOUSE 3" "PENTHOUSE 2" "PENTHOUSE 1" "GROUND" "GROUND" "GROUND"
"FIRST" "SECOND" "THIRD" "FOURTH" "FIFTH" "SIXTH" "SEVENTH" "EIGHTH" "NINTH" "TENTH" "ELEVENTH" "TWELFTH" "THIRTEENTH" "FOURTEENTH" "FIFTEENTH"
"SIXTEENTH" "SEVENTEENTH" "EIGHTEENTH" "NINTEENTH" "TWENTIETH" "TWENTY-FIRST" "TWENTY-SECOND" "TWENTY-THIRD" "TWENTY-FOURTH" "TWENTY-FIFTH"
"TWENTY-SIXTH" "TWENTY-SEVENTH" "TWENTY-EIGHTH" "TWENTY-NINTH" "THIRTIETH" "THIRTY-FIRST" "THIRTY-SECOND" "THIRTY-THIRD" "THIRTY-FOURTH" "THIRTY-FIFTH")
)
)
)
;"BASEMENT 1 FLOOR PLAN"
:yes:
(setq DV:DRAWING-TITLE
(strcat
(cdr
(assoc DV:FLOOR-NUMBER
'(
("B9" . "BASEMENT 9")
("B8" . "BASEMENT 8")
("B7" . "BASEMENT 7")
("B6" . "BASEMENT 6")
("B5" . "BASEMENT 5")
("B4" . "BASEMENT 4")
("B3" . "BASEMENT 3")
("B2" . "BASEMENT 2")
("B1" . "BASEMENT 1")
("S9" . "SUB-BASEMENT 9")
("S8" . "SUB-BASEMENT 8")
("S7" . "SUB-BASEMENT 7")
("S6" . "SUB-BASEMENT 6")
("S5" . "SUB-BASEMENT 5")
("S4" . "SUB-BASEMENT 4")
("S3" . "SUB-BASEMENT 3")
("S2" . "SUB-BASEMENT 2")
("S1" . "SUB-BASEMENT 1")
("SB" . "SUB-BASEMENT")
("M9" . "MEZZANINE 9")
("M8" . "MEZZANINE 8")
("M7" . "MEZZANINE 7")
("M6" . "MEZZANINE 6")
("M5" . "MEZZANINE 5")
("M4" . "MEZZANINE 4")
("M3" . "MEZZANINE 3")
("M2" . "MEZZANINE 2")
("M1" . "MEZZANINE 1")
("R9" . "ROOF 9")
("R8" . "ROOF 8")
("R7" . "ROOF 7")
("R6" . "ROOF 6")
("R5" . "ROOF 5")
("R4" . "ROOF 4")
("R3" . "ROOF 3")
("R2" . "ROOF 2")
("R1" . "ROOF 1")
("P9" . "PENTHOUSE 9")
("P8" . "PENTHOUSE 8")
("P7" . "PENTHOUSE 7")
("P6" . "PENTHOUSE 6")
("P5" . "PENTHOUSE 5")
("P4" . "PENTHOUSE 4")
("P3" . "PENTHOUSE 3")
("P2" . "PENTHOUSE 2")
("P1" . "PENTHOUSE 1")
("G1" . "GROUND")
("GF" . "GROUND")
("00" . "GROUND")
("01" . "FIRST")
("02" . "SECOND")
("03" . "THIRD")
("04" . "FOURTH")
("05" . "FIFTH")
("06" . "SIXTH")
("07" . "SEVENTH")
("08" . "EIGHTH")
("09" . "NINTH")
("10" . "TENTH")
("11" . "ELEVENTH")
("12" . "TWELFTH")
("13" . "THIRTEENTH")
("14" . "FOURTEENTH")
("15" . "FIFTEENTH")
("16" . "SIXTEENTH")
("17" . "SEVENTEENTH")
("18" . "EIGHTEENTH")
("19" . "NINTEENTH")
("20" . "TWENTIETH")
("21" . "TWENTY-FIRST")
("22" . "TWENTY-SECOND")
("23" . "TWENTY-THIRD")
("24" . "TWENTY-FOURTH")
("25" . "TWENTY-FIFTH")
("26" . "TWENTY-SIXTH")
("27" . "TWENTY-SEVENTH")
("28" . "TWENTY-EIGHTH")
("29" . "TWENTY-NINTH")
("30" . "THIRTIETH")
("31" . "THIRTY-FIRST")
("32" . "THIRTY-SECOND")
("33" . "THIRTY-THIRD")
("34" . "THIRTY-FOURTH")
("35" . "THIRTY-FIFTH")
)
)
)
" FLOOR PLAN"
)
)