试试看,
- ;;;/////////////////////////////////////////////////////////////////
- (defun c:standardlayers () ;Define function
- (SET_LAYER) ;Goto SET_LAYER Function
- (princ) ;Exit quietly
- ) ;End of define function
- ;;;/////////////////////////////////////////////////////////////////
- (defun SET_LAYER () ;Define function
- (CREATE_LAYER "Const" "1" "CONTINUOUS") ;Goto CREATE_Layer Function, Layer Name, Color, LineType
- (CREATE_LAYER "Steel" "2" "CONTINUOUS") ;Goto CREATE_Layer Function, Layer Name, Color, LineType
- (CREATE_LAYER "Dimension" "4" "CONTINUOUS") ;Goto CREATE_Layer Function, Layer Name, Color, LineType
- (CREATE_LAYER "Hidden" "1" "HIDDEN") ;Goto CREATE_Layer Function, Layer Name, Color, LineType
- (CREATE_LAYER "Text" "7" "CONTINUOUS") ;Goto CREATE_Layer Function, Layer Name, Color, LineType
- (CREATE_LAYER "Welds" "6" "CONTINUOUS") ;Goto CREATE_Layer Function, Layer Name, Color, LineType
- (CREATE_LAYER "Ref" "8" "CONTINUOUS") ;Goto CREATE_Layer Function, Layer Name, Color, LineType
- ) ;End define function
- ;;;/////////////////////////////////////////////////////////////////
- (defun CREATE_LAYER (NLAY CLR LT / LAY FRZ) ;Define function, Declare variables and arguments
- (setq LAY (tblsearch "layer" NLAY)) ;Search drawing to find layer
- (if ;If the following returns true
- (not LAY) ;Layer not in drawing
- (command "_.layer" "m" NLAY "c" CLR "" "lt" LT "" "") ;Layer command ~ make new layer with color and linetype
- (progn ;Then do the following
- (setq FRZ (cdr (assoc 70 LAY))) ;Variable FRZ is frozen layer
- (if (= FRZ 65) ;Layer frozen from last edit
- (progn ;Then do the following
- (command "_.layer" "t" NLAY "") ;Thaw new layer if frozen
- (command "_.layer" "s" NLAY "") ;Set new layer
- ) ;End progn (otherwise...)
- (command "_.layer" "s" NLAY "") ;Set new layer
- ) ;End if
- ) ;End progn (otherwise...)
- ) ;End if
- ) ;End define function
- ;;;/////////////////////////////////////////////////////////////////
|