;;(setq layer (EntmakeLayer “MY2”))
(defun EntmakeLayer (LayerName)
(entmakeX
(list ‘(0 。 “LAYER”)
’(100 。 “AcDbSymbolTableRecord”)
‘(100 。 “AcDbLayerTableRecord”)
’(70 。 0)
(cons 2 LayerName)
)
)
)
;;;建立新圖層並設為當前層(新圖層不列印)2013-4-20
(defun EntMakeLayer (layname color / nlay)
(vl-load-com)
(or (tblsearch “layer” layname)
(or (not (setq nlay
(vla-add (vla-get-layers
(vla-get-activedocument (vlax-get-acad-object))
)
layname
)
)
)
(vla-put-color nlay color) ;vla-put-返回值為nil
;(vla-put-plottable nlay :vlax-false) ;設為不列印層
;(vla-put-activelayer
; (vla-get-activedocument (vlax-get-acad-object))
; nlay
;)
;;設為當前層
)
)
)
;;測試(EntMakeLayer “4” 1)