Specifies the layer for an object.
Supported platforms: Windows only
Signature
VBA:
object.Layer
- object
-
Type: All drawing objects, AttributeReference, Group, SubDMeshEdge, SubDMeshFace, SubDMeshVertex, SubEntity, SubEntSolidEdge, SubEntSolidFace, SubEntSolidNode, SubEntSolidVertex
The objects this property applies to.
Property Value
Read-only: No (except for Group objects)
Type: String
The name of the layer.
Remarks
All objects have an associated layer. The document always contains at least one layer (layer 0). As with linetypes, you can specify a layer for an object. If you do not specify a layer, the current active layer is used for a new object. If a layer is specified for an object, the current active layer is ignored. Use the ActiveLayer property to set or query the current active layer.
Each layer has associated properties that can be set and queried through the Layer object.
Examples
VBA:
Sub Example_Layer() ' This example creates a new layer named "ABC" (colored blue). ' It then creates a circle and assigns it to layer "ABC" ' Create new layer Dim layerObj As AcadLayer Set layerObj = ThisDrawing.Layers.Add("ABC") Dim color As AcadAcCmColor Set color = layerObj.TrueColor Call color.SetRGB(80, 100, 244) layerObj.TrueColor = color ' Create Circle Dim circleObj As AcadCircle Dim center(0 To 2) As Double Dim radius As Double center(0) = 3: center(1) = 3: center(2) = 0 radius = 1.5 Set circleObj = ThisDrawing.ModelSpace.AddCircle(center, radius) ZoomAll MsgBox "The circle has been created on layer " & circleObj.Layer, , "Layer Example" ' Set the layer of new circle to "ABC" circleObj.Layer = "ABC" ' Refresh view ThisDrawing.Regen (True) MsgBox "The circle is now on layer " & circleObj.Layer, , "Layer Example" End Sub
Visual LISP:
(vl-load-com) (defun c:Example_Layer() ;; This example creates a new layer named "ABC" (colored blue). ;; It then creates a circle and assigns it to layer "ABC" (setq acadObj (vlax-get-acad-object) doc (vla-get-ActiveDocument acadObj)) ;; Create new layer (setq layerObj (vla-Add (vla-get-Layers doc) "ABC") color (vla-get-TrueColor layerObj)) (vla-SetRGB color 80 100 244) (vla-put-TrueColor layerObj color) ;; Create Circle (setq center (vlax-3d-point 3 3 0) radius 1.5) (setq modelSpace (vla-get-ModelSpace doc) circleObj (vla-AddCircle modelSpace center radius)) (vla-ZoomAll acadObj) (alert (strcat "The circle has been created on layer " (vla-get-Layer circleObj))) ;; Set the layer of new circle to "ABC" (vla-put-Layer circleObj "ABC") ;; Refresh view (vla-Regen doc :vlax-true) (alert (strcat "The circle is now on layer " (vla-get-Layer circleObj))) )