Hello,
from this topic & code
http://www.theswamp.org/index.php?topic=12640.msg155185#msg155185How can I create a list of non plot layers & layers frozen in viewports ?
.. (list "Non Plot layers" "*" "*" "*" ? "*" ?)
.. (list "Frozen layers in viewports" "*" "*" "*" ? "*" ?)
;The Code
(defun sdg_CreateLayerFilter (filtlst / lfiltobj safecode safefilt)
(vl-load-com)
(setq LFILTOBJ (vla-addobject
(vla-GetExtensionDictionary
(vla-Get-Layers
(vla-Get-ActiveDocument
(vlax-Get-Acad-Object)
)
)
)
"ACAD_LAYERFILTERS"
"AcDbDictionary"
)
SAFECODE (vlax-make-safearray 2 '(0 . 6))
SAFEFILT (vlax-make-safearray 12 '(0 . 6))
)
(vlax-safearray-fill SAFECODE (list 1 1 1 1 70 1 1))
(foreach
SUBLST FILTLST
(vlax-safearray-fill
SAFEFILT
(mapcar '(lambda (X) (vlax-make-variant X
) SUBLST)
)
(vla-addxrecord LFILTOBJ (nth 0 SUBLST))
(vla-setxrecorddata
(vla-item LFILTOBJ (nth 0 SUBLST))
SAFECODE
SAFEFILT
)
)
(prin1)
)
(defun c:MakeFilters ( / filtlst)
(setq filtlst
(list ;;name Lay col lt flags lw plot
(list "OnThawed" "*" "*" "*" 13 "*" "*")
(list "OffThawed" "*" "*" "*" 15 "*" "*")
(list "OnFrozen" "*" "*" "*" 5 "*" "*")
)
)
(sdg_CreateLayerFilter filtlst)
)
(c:MakeFilters)