About Listing an Object's Properties and Methods (AutoLISP/ActiveX)

 
 
 

The Visual LISP Inspect tool and vlax-dump-object function allow you to display an object's properties.

NoteActiveX support in AutoLISP is limited to Windows only.

You can invoke the vlax-dump-object function from an AutoLISP program, the Visual LISP Console window prompt, or the AutoCAD Command prompt. The vlax-dump-object function prints a list of the properties of the specified object and returns T.

For example, the following code obtains the last object added to the model space, then issues vlax-dump-object to print the object's properties:

(setq WhatsMyLine (vla-item mSpace (- (vla-get-count mspace) 1)))
#<VLA-OBJECT IAcadLWPolyline 036f1d0c>

(vlax-dump-object WhatsMyLine)
; IAcadLWPolyline: AutoCAD Lightweight Polyline Interface
; Property values:
; Application (RO) = #<VLA-OBJECT IAcadApplication 00a4ae24>
; Area (RO) = 2.46556
; Closed = 0
; Color = 256
; ConstantWidth = 0.0
; Coordinate = ...Indexed contents not shown...
; Coordinates = (8.49917 7.00155 11.2996 3.73137 14.8 5.74379 ... )
; Database (RO) = #<VLA-OBJECT IAcadDatabase 01e3da44>
; Elevation = 0.0
; Handle (RO) = "53"
; HasExtensionDictionary (RO) = 0
; Hyperlinks (RO) = #<VLA-OBJECT IAcadHyperlinks 01e3d7d4>
; Layer = "0"
; Linetype = "BYLAYER"
; LinetypeGeneration = 0
; LinetypeScale = 1.0
; Lineweight = -1
; Normal = (0.0 0.0 1.0)
; ObjectID (RO) = 28895576
; ObjectName (RO) = "AcDbPolyline"
; PlotStyleName = "ByLayer"
; Thickness = 0.0
; Visible = -1
T

There is an optional second argument you can supply to vlax-dump-object that causes it to also list all the methods that apply to the object. Simply specify T following the object name:

(vlax-dump-object WhatsMyLine T)