;;;löscht alle gefrorene und/oder ausgeschaltete Layer (defun C:DEL_LAY_FRZ_OFF ( / ) (defun M:DELFreezeLAYER (on-fr t-f / ITEM) (defun DT:DELLAYEROBJ (LAYERNAME / OK? BLOCK ITEM) (if (and (= (type LAYERNAME) 'STR) (tblobjname "LAYER" LAYERNAME) ) ;_ end of and (progn (setq OK? 'T) (vlax-for BLOCK (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object)) ) ;_ end of vla-get-blocks (if (= (vla-get-isxref BLOCK) :vlax-false) (vlax-for ITEM BLOCK (if (= (strcase (vla-get-layer ITEM)) (strcase LAYERNAME)) (setq OK? (and (not (vl-catch-all-error-p (vl-catch-all-apply 'vla-delete (list ITEM) ) ;_ end of vl-catch-all-apply ) ;_ end of vl-catch-all-error-p ) ;_ end of not OK? ) ;_ end of and ) ;_ end of setq ) ;_ end of if ) ;_ end of vlax-for ) ;_ end of if ) ;_ end of vlax-for ) ;_ end of progn ) ;_ end of if ) ;_ end of defun (vlax-for item (vla-get-layers (vla-get-activedocument (vlax-get-acad-object)) ) ;_ end of vla-get-layers (if (= (eval(list(read(strcat "vla-get-"on-fr)) ITEM)) t-f) (DT:DELLAYEROBJ (vla-get-name ITEM)) ) ;_ end of if ) ;_ end of vlax-for (princ) ) ;_ end of defun ;;; alle gefrohrenen Layer löschen (initget 1 "Löschen Nichtlöschen") (if (= (getkword "\nGefrorene Layer Löschen/Nichtlöschen L :" ) ;_ end of getkword "Löschen" ) ;_ end of = (M:DELFreezeLAYER "freeze" ':vlax-true) ) ;_ end of if ;;; alle ausgeschalteten Layer löschen (initget 1 "Löschen Nichtlöschen") (if (= (getkword "\nAusgeschaltete Layer Löschen/Nichtlöschen L :" ) ;_ end of getkword "Löschen" ) ;_ end of = (M:DELFreezeLAYER "layeron" ':vlax-false) ) ;_ end of if )