This is my first attempt at changing layer colors in AutoCAD 2004 (and dealing with the TrueColor property) using the object model. The examples I've found on the discussion boards involve calling the AcCmColor interface: (vla-getInterfaceObject (vlax-get-acad-object) "AutoCAD.AcCmColor.16") The way I did it, however, involved getting the TrueColor property of a layer, changing the color method and ACI color of the TrueColor AcCmColor object, then passing it back to the layer object. The sample code below uses this approach as it changes the color of layer "0" to blue (color 5). Is there a problem with this approach? Is a call to the AcCmColor interface required even when dealing with an existing object that already contains an AcCmColor object? Thank you for your help. (DEFUN c:bluelayer0 (/ layer_0_object truecolor colorindex) ;; ;; get layer 0 object (SETQ layer_0_object (VLA-ITEM (VLA-GET-LAYERS (VLA-GET-ACTIVEDOCUMENT (VLAX-GET-ACAD-OBJECT)) ) ;_ VLA-GET-LAYERS "0" ) ;_ VLA-ITEM ) ;_ SETQ ;; ;; get TRUECOLOR property (SETQ truecolor (VLA-GET-TRUECOLOR layer_0_object ) ;_ VLA-GET-TRUECOLOR ) ;_ SETQ ;; ;; get COLORINDEX property (SETQ colorindex (VLA-GET-COLORINDEX truecolor)) ;; ;; set COLORMETHOD to ACI (VLA-PUT-COLORMETHOD truecolor ACCOLORMETHODBYACI) ;; ;; set COLORINDEX to blue (VLA-PUT-COLORINDEX truecolor 5) ;; ;; set TRUECOLOR property of LAYER (VLA-PUT-TRUECOLOR layer_0_object truecolor) (PRINC) ) ;_ DEFUN