Gets the AutoCAD class name of the object.
Supported platforms: Windows only
VBA:
object.ObjectName
Type: All drawing objects, AttributeReference, Block, Blocks, Dictionary, Dictionaries, Dimension, DimStyle, DimStyles, Group, Groups, Layer, Layers, Layout, Layouts, Linetype, Linetypes, Material, Materials, MLeaderStyle, ModelSpace, PaperSpace, PlotConfiguration, PlotConfigurations, RegisteredApplication, RegisteredApplications, SectionManager, SectionSettings, SortentsTable, SubDMeshEdge, SubDMeshFace, SubDMeshVertex, SubEntity, SubEntSolidEdge, SubEntSolidFace, SubEntSolidNode, SubEntSolidVertex, TableStyle, TextStyle, TextStyles, UCS, UCSs, View, Views, Viewport, Viewports, XRecord
The objects this property applies to.
Read-only: Yes
Type: String
The AutoCAD class name of an object.
No additional remarks.
VBA:
Sub Example_ObjectName()
' This example creates several objects in model space.
' It then iterates through model space and displays the
' Object Name for each object found.
' Create a Ray object in model space
Dim rayObj As AcadRay
Dim basePoint(0 To 2) As Double
Dim SecondPoint(0 To 2) As Double
basePoint(0) = 3#: basePoint(1) = 3#: basePoint(2) = 0#
SecondPoint(0) = 1#: SecondPoint(1) = 3#: SecondPoint(2) = 0#
Set rayObj = ThisDrawing.ModelSpace.AddRay(basePoint, SecondPoint)
' Create a Polyline object in model space
Dim plineObj As AcadLWPolyline
Dim points(0 To 5) As Double
points(0) = 3: points(1) = 7
points(2) = 9: points(3) = 2
points(4) = 3: points(5) = 5
Set plineObj = ThisDrawing.ModelSpace.AddLightWeightPolyline(points)
plineObj.Closed = True
' Create a Line object in model space
Dim lineObj As AcadLine
Dim startPoint(0 To 2) As Double
Dim endPoint(0 To 2) As Double
startPoint(0) = 0: startPoint(1) = 0: startPoint(2) = 0
endPoint(0) = 2: endPoint(1) = 2: endPoint(2) = 0
Set lineObj = ThisDrawing.ModelSpace.AddLine(startPoint, endPoint)
' Create a Circle object in model space
Dim circObj As AcadCircle
Dim centerPt(0 To 2) As Double
Dim radius As Double
centerPt(0) = 20: centerPt(1) = 30: centerPt(2) = 0
radius = 3
Set circObj = ThisDrawing.ModelSpace.AddCircle(centerPt, radius)
' Create an Ellipse object in model space
Dim ellObj As AcadEllipse
Dim majAxis(0 To 2) As Double
Dim center(0 To 2) As Double
Dim radRatio As Double
center(0) = 5#: center(1) = 5#: center(2) = 0#
majAxis(0) = 10: majAxis(1) = 20#: majAxis(2) = 0#
radRatio = 0.3
Set ellObj = ThisDrawing.ModelSpace.AddEllipse(center, majAxis, radRatio)
ZoomAll
' Iterate through the model space collection and display
' the object name of each object found.
Dim objName As String
Dim entry As AcadEntity
For Each entry In ThisDrawing.ModelSpace
objName = entry.ObjectName
entry.Highlight (True)
MsgBox "The name of this object is " & objName, vbInformation, "ObjectName Example"
entry.Highlight (False)
Next
End Sub
Visual LISP:
(vl-load-com)
(defun c:Example_ObjectName()
;; This example creates several objects in model space.
;; It then iterates through model space and displays the
;; Object Name for each object found.
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
(setq modelSpace (vla-get-ModelSpace doc))
;; Create a Ray object in model space
(setq basePoint (vlax-3d-point 3 3 0)
secondPoint (vlax-3d-point 1 3 0))
(setq rayObj (vla-AddRay modelSpace basePoint SecondPoint))
;; Create a Polyline object in model space
(setq points (vlax-make-safearray vlax-vbDouble '(0 . 5)))
(vlax-safearray-fill points '(3 7
9 2
3 5
)
)
(setq plineObj (vla-AddLightWeightPolyline modelSpace points))
(vla-put-Closed plineObj :vlax-true)
;; Create a Line object in model space
(setq startPoint (vlax-3d-point 0 0 0)
endPoint (vlax-3d-point 2 2 0))
(setq lineObj (vla-AddLine modelSpace startPoint endPoint))
;; Create a Circle object in model space
(setq centerPt (vlax-3d-point 20 30 0)
radius 3)
(setq circObj (vla-AddCircle modelSpace centerPt radius))
;; Create an Ellipse object in model space
(setq center (vlax-3d-point 5 5 0)
majAxis (vlax-3d-point 10 20 0)
radRatio 0.3)
(setq ellObj (vla-AddEllipse modelSpace center majAxis radRatio))
(vla-ZoomAll acadObj)
;; Iterate through the model space collection and display
;; the object name of each object found.
(vlax-for entry (vla-get-ModelSpace doc)
(setq objName (vla-get-ObjectName entry))
(vla-Highlight entry :vlax-true)
(alert (strcat "The name of this object is " objName))
(vla-Highlight entry :vlax-false)
)
)