为什么使用附加语法?
- (if (tblsearch "BLOCK" MFRMODEL)
- (command "layer" "s" "QF-EQPM" "" "insert" MFRMODEL pause "1" "1" pause "setvar" "clayer" CL)
- [b][color=red]([/color][/b]
- (cond
- ((wcmatch ORN "PLAN")(command "layer" "s" "QF-EQPM" "" "insert" "GTC005P" pause "1" "1" pause "setvar" "clayer" CL "rename" "block" "GTC005P" MFRMODEL))
- ((wcmatch ORN "ELEV")(command "layer" "s" "QF-EQPM" "" "insert" "GTC005E" pause "1" "1" pause "setvar" "clayer" CL "rename" "block" "GTC005E" MFRMODEL))
- ((wcmatch ORN "SIDE")(command "layer" "s" "QF-EQPM" "" "insert" "GTJ011S" pause "1" "1" pause "setvar" "clayer" CL "rename" "block" "GTJ011S" MFRMODEL))
- ((wcmatch ORN "3D")(command "layer" "s" "QF-EQPM" "" "insert" "GTC0053" pause "1" "1" pause "setvar" "clayer" CL "rename" "block" "GTC0053" MFRMODEL))
- )
- [b][color=red])[/color][/b]
- )
然而,尝试一下这样的[未经测试的](我记得出于某种原因,你不喜欢setq):
- (
- (lambda ( nbnm obnm nlyr olyr cmd )
- (cond
- ( (not (tblsearch "LAYER" nlyr)) (princ (strcat "\nLayer "" nlyr "" does not exist.")) )
- ( (not olyr) (princ "\nInvalid "CL" symbol.") )
- ( (not (tblsearch "LAYER" olyr)) (princ (strcat "\nLayer "" olyr "" does not exist.")) )
- (
- (setvar 'cmdecho 0)(setvar 'clayer nlyr)
- (cond
- ( (not nbnm) (princ "\nInvalid "MFRMODEL" symbol.") )
- ( (tblsearch "BLOCK" nbnm) (not (command "_.INSERT" nbnm "\" "1" "1" "\")) )
- ( (not obnm) (princ "\nInvalid "ORN" symbol.") )
- ( (not (tblsearch "BLOCK" obnm)) (princ (strcat "\nBlock "" obnm "" does not exist.")) )
- (T (not (command "_.INSERT" obnm "\" "1" "1" "\")) (command "_.RENAME" "block" obnm nbnm) )
- )
- (setvar 'clayer olyr)(setvar 'cmdecho cmd)
- )
- )
- (princ)
- )
- (if (and (eq 'STR (type MFRMODEL)) (snvalid MFRMODEL)) MFRMODEL)
- (cdr (assoc ORN '(("PLAN" . "GTC005P") ("ELEV" . "GTC005E") ("SIDE" . "GTJ011S") ("3D" . "GTC0053"))))
- "QF-EQPM"
- (if (and (eq 'STR (type CL)) (snvalid CL)) CL)
- (getvar 'cmdecho)
- )
P、 别评判我,罗伊! |