Sanjoy Nath Geometrifying Trigonometry for ... - Autodesk Forums

42
Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 1 of 42 In the dvb helps Ha ha ha we can do same thing for Autocads Active x objects with vla- settings (as we have set the prefix there) AstSTEELAUTOMATIONLib.AdvanceSteelApplication _$(vlax-typeinfo-available-p "asw-ConcreteBeam") (vlax-get-object "AstSTEELAUTOMATIONLib.AdvanceSteelApplication") (vlax-get-object "AstSTEELAUTOMATIONLib.DwgFiler") (vlax-create-object "AstSTEELAUTOMATIONLib.AdvanceSteelApplication") (vlax-create-object "AstSTEELAUTOMATIONLib.DwgFiler") (vlax-create-object "Excel.Application") (vlax-create-object "AstSTEELAUTOMATIONLib.Anchor") Change the names with vla- before the vba names of functions https://help.autodesk.com/view/ACD/2018/ENU/?guid=GUID-69164FAA-F3C7-47A4-962C-5F4B2D5BC583 About Determining the Visual LISP Function You Need (AutoLISP/ActiveX) The Visual LISP ActiveX functions actually provide access to ActiveX methods. For example, look at the following AutoLISP statement, which was entered at the Visual LISP Console prompt: (setq mycircle (vla-addCircle mSpace (vlax-3d-point '(3.0 3.0 0.0)) 2.0)) #<VLA-OBJECT IAcadCircle 03ad067c> This command adds a circle to a drawing, using the Addcircle method. The function called to draw the circle is vla- addCircle. If you do not know what function adds a circle to an AutoCAD drawing, you can figure it out by looking in the ActiveX and VBA Reference. If you look up the definition for a Circle object, here's what the entry looks like:

Transcript of Sanjoy Nath Geometrifying Trigonometry for ... - Autodesk Forums

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 1 of 42

In the dvb helps Ha ha ha we can do same thing for Autocads Active x objects with vla- settings (as we have set the prefix there) AstSTEELAUTOMATIONLib.AdvanceSteelApplication _$(vlax-typeinfo-available-p "asw-ConcreteBeam") (vlax-get-object "AstSTEELAUTOMATIONLib.AdvanceSteelApplication") (vlax-get-object "AstSTEELAUTOMATIONLib.DwgFiler") (vlax-create-object "AstSTEELAUTOMATIONLib.AdvanceSteelApplication") (vlax-create-object "AstSTEELAUTOMATIONLib.DwgFiler") (vlax-create-object "Excel.Application") (vlax-create-object "AstSTEELAUTOMATIONLib.Anchor") Change the names with vla- before the vba names of functions https://help.autodesk.com/view/ACD/2018/ENU/?guid=GUID-69164FAA-F3C7-47A4-962C-5F4B2D5BC583 About Determining the Visual LISP Function You Need (AutoLISP/ActiveX)

The Visual LISP ActiveX functions actually provide access to ActiveX methods. For example, look at the following AutoLISP statement, which was entered at the Visual LISP Console prompt:

(setq mycircle (vla-addCircle mSpace (vlax-3d-point '(3.0 3.0 0.0)) 2.0))

#<VLA-OBJECT IAcadCircle 03ad067c>

This command adds a circle to a drawing, using the Addcircle method. The function called to draw the circle is vla-addCircle. If you do not know what function adds a circle to an AutoCAD drawing, you can figure it out by looking in the ActiveX and VBA Reference. If you look up the definition for a Circle object, here's what the entry looks like:

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 2 of 42

Sometimes, as in this Circle entry, there is descriptive text that identifies the method you need. Often, though, you will need to look through the list of methods to find the one that matches the action you want to take. Once you find the name of the method, add a vla- prefix to the method name to get the name of the Visual LISP function that implements the method. In this example, it is vla-AddCircle. Note: In Visual LISP, function names are not case-sensitive; vla-addcircle is the same as vla-AddCircle. Parent topic: About Using Visual LISP Functions With ActiveX Methods (AutoLISP/ActiveX) Was this helpful? Yes No About Calling an ActiveX Method (AutoLISP/ActiveX)

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 3 of 42

Once you identify the ActiveX method you need, you must determine how to make the call with AutoLISP. You need to know the arguments to specify and the data type of those arguments. Note: ActiveX support in AutoLISP is limited to Windows only. The ActiveX and VBA Reference contains the information required for using ActiveX methods. For example, the AddCircle method reference page shows the definition for this method. AddCircle Method Signature

RetVal = object.AddCircle(Center, Radius)

RetVal Circle object; return value The newly created Circle object. Object Block, ModelSpace Collection, PaperSpace Collection The objects this method applies to. Center Variant (three-element array of doubles); input-only The 3D WCS coordinates specifying the circle's center. Radius Double; input-only The radius of the circle. Must be a positive number. The syntax definitions in the reference were designed for VBA programmers, so they may take some getting used to. For AddCircle, the syntax is defined as follows:

RetVal = object.AddCircle(Center, Radius)

The AutoLISP syntax required for the same operation is:

(setq RetVal (vla-AddCircle object center radius))

The return value (RetVal, in VBA) is straightforward. The ActiveX and VBA Reference defines this as a Circle object. In Visual LISP, whenever an AutoCAD object is returned by an ActiveX function, it is returned as a VLA-object data type. The object referred to before the method name (object.AddCircle) is always the first argument in a vla function call. This is the AutoCAD object you are querying or modifying. For example, add a circle to the drawing model space with the following:

(vla-addCircle mSpace ...)

In this example, mspace refers to the ModelSpace object. The ModelSpace object provides access to the model space of the current drawing. The Center and Radius arguments refer to data types that may be unfamiliar to AutoLISP programmers. Center must be expressed as an array, which is similar to a three element list in AutoLISP. Radius is double data type, which is a real number in AutoLISP. Parent topic: About Using Visual LISP Functions With ActiveX Methods (AutoLISP/ActiveX) Related Concepts About Invoking an Object’s Method (AutoLISP/ActiveX) About Obtaining and Setting an Object’s Property (AutoLISP/ActiveX) About the AutoCAD Object Model (AutoLISP/ActiveX) About Determining If an ActiveX Method or Property Applies to an Object (AutoLISP/ActiveX) About Determining Whether an Object is Available for Update (AutoLISP/ActiveX) About Using ActiveX with AutoLISP (AutoLISP/ActiveX)

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 4 of 42

Method Invocation Functions Reference (AutoLISP/ActiveX) Property-Handling Functions Reference (AutoLISP/ActiveX) Was this helpful? Yes No About Converting Between AutoLISP and ActiveX Data Types (AutoLISP/ActiveX)

When working with the ActiveX support and core AutoLISP functions, you will need to convert between data types. Note: ActiveX support in AutoLISP is limited to Windows only. Adding a circle to a drawing with the AddCircle method requires you to specify a center point and radius for the circle. These arguments are referred to as Center and Radius. Center is defined as a variant (three-element array of doubles), and Radius is listed as a double:

(setq RetVal (vla-AddCircle aMSpace Center Radius))

Elements RetVal Object; output only. The resulting circle object from the AddCircle method. aMSpace Object; input only. The object that the AddCircle method should work on. Center Variant (three-element array of doubles); input only. A 3D WCS coordinate specifying the circle's center. Variants are essentially self-defining structures that can contain different types of data. For example, strings, integers, and arrays can all be represented by variants. Stored along with the data is information identifying the type of data. This self-defining feature makes variants useful for passing parameters to ActiveX servers, because it enables servers based on any language to understand the data value. Radius Double; input only. The radius of the circle. Must be a positive number. AutoLISP to ActiveX Data Types ActiveX supports many data types that are similar to those in AutoLISP, but there are a few unique data types that do not directly map to those supported by AutoLISP. The following explains how to convert the data types:

AutoLISP data types accepted in place of an ActiveX data type

Integer Real String Ename

VLA-object

Variant List :Safe-array

Boolean

:vlax-true :vlax-false

nil :vlax-null

Byte X

Boolean X X

Integer X

Long X

Single/Short X

Double X X

Object X

String X

Variant X

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 5 of 42

AutoLISP data types accepted in place of an ActiveX data type

Integer Real String Ename

VLA-object

Variant List :Safe-array

Boolean

:vlax-true :vlax-false

nil :vlax-null

Array X

Nothing X

Empty X

Converting Array and List data types The ActiveX array data type are similar to a list in AutoLISP. They contain multiple elements that represent different data structures. A common use for an array is to represent a coordinate value. You can use vlax-safearray->list to convert an array to a list. Converting a list to an array requires you to define the data type and number of elements the array should have with vlax-make-safearray, and assign the values of the list to the elements of the array using the vlax-safearray-fill. Converting Variant data types Variant data types are used when a method might return or use more than one type of data. You can use vlax-make-variant to create a variant. When creating a variant, you specify the type of data and value it should hold. If a variant is returned by a method or property, you can use the vlax-variant-type and vlax-variant-value functions. Converting VLA-object, Handles, and Ename data types There are a number of ways to refer to AutoCAD drawing objects with AutoLISP. These include the following: VLA-objects Returned by ActiveX functions. Use vlax-vla-object->ename to convert from the VLA-object to ename (entity name) data type.

(setq MSpace (vla-get-ModelSpace (vla-get-ActiveDocument (vlax-get-acad-object)))) #<VLA-OBJECT IAcadModelSpace 0000000030434638> (setq circObj (vla-AddCircle MSpace (vlax-3d-point '(5.0 5.0 0.0)) 3)) #<VLA-OBJECT IAcadCircle 00000000303b2698> (vlax-vla-object->ename circObj)

<Entity name: 7ffffb05de0>

Entity names (enames) Returned by handent, entget, and entsel, identifying objects in an open drawing. Use vlax-ename->vla-object to convert from the ename to VLA-object data type.

(setq en (handent handle-circle)) <Entity name: 27f0538> (setq en (car (entsel "\nSelect circle: "))) <Entity name: 27f0538> (vlax-ename->vla-object en)

#<VLA-OBJECT IAcadCircle 00000000303b3718>

Handles

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 6 of 42

Returned by vla-get-handle or by retrieving the DXF 5 group code from an entity name’s association list, which entities retain across AutoCAD sessions. Use vla-handleToObject to return the VLA-object that is associated with the handle.

(vla-get-handle vla-circle) "4F" (setq handle-circle (cdr (assoc 5 (entget ename-circle)))) "4F" (setq vla-circle (vla-handleToObject acadDocument handle-circle))

#<VLA-OBJECT IAcadCircle 03642c24>

Object IDs Used by ActiveX, ObjectARX, and Manage .NET programs to identify objects. Use vla-ObjectIDToObject to convert an object ID to a VLA-object or use vla-get-ObjectID to convert a VLA-object to an object ID.

(setq objid-Circle (vla-get-objectid vla-circle)) 41878840 (vla-ObjectIDtoObject acadDocument objid-circle) #<VLA-OBJECT IAcadCircle 03642c24>

Topics in this section About Working with Variants (AutoLISP/ActiveX) Variants are used to pass and return values from ActiveX functions that could return different types of data. About Safearrays (AutoLISP/ActiveX) Arrays passed to ActiveX methods must be of the safearray type. These arrays are safe because you cannot accidentally assign values outside the array bounds and cause a data exception to occur. About Safearrays with Variants (AutoLISP/ActiveX) Safearray data must be passed to ActiveX methods through variants. Parent topic: About Using Visual LISP Functions With ActiveX Methods (AutoLISP/ActiveX) Related Concepts About Using ActiveX with AutoLISP (AutoLISP/ActiveX) About Accessing the AutoCAD Application Object (AutoLISP/ActiveX) Data Conversion Functions Reference (AutoLISP/ActiveX) Related Tasks To convert an ename, handle, or object ID to a VLA-object (AutoLISP/ActiveX) Was this helpful? Yes No About Working with Variants (AutoLISP/ActiveX)

Variants are used to pass and return values from ActiveX functions that could return different types of data. Note: ActiveX support in AutoLISP is limited to Windows only. Several AutoLISP functions allow you to create and work with variants: vlax-make-variant - Creates a variant. vlax-variant-type - Returns the data type of a variant. vlax-variant-value - Returns the value of a variant variable. vlax-variant-change-type - Changes the data type of a variant variable.

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 7 of 42

The vlax-make-variant function accepts two arguments: value and type. The value argument is the value to be assigned to the variant. The type argument specifies the type of data to be stored in the variant. For type , specify one of the following constants: vlax-vbEmpty Uninitialized (default value) vlax-vbNull Contains no valid data vlax-vbInteger Integer vlax-vbLong Long integer vlax-vbSingle Single-precision floating-point number vlax-vbDouble Double-precision floating-point number vlax-vbString String vlax-vbObject Object vlax-vbBoolean Boolean vlax-vbArray Array Note: The constants evaluate to integer values. Because the integer values can change, you should always refer to the constant, not the integer value. For example, the following function call creates an integer variant and sets its value to 5:

(setq varint (vlax-make-variant 5 vlax-vbInteger))

#<variant 2 5>

The return value indicates the variant's data type (2, which is vbInteger) and the variant's value (5). If you do not specify a data type to vlax-make-variant, the function assigns a default type. For example, the following function call creates a variant and assigns it a value of 5 but does not specify a data type:

(setq varint (vlax-make-variant 5)) #<variant 3 5>

By default, vlax-make-variant assigned the specified integer value to a Long Integer data type, not Integer, as you might expect. When assigning a numeric value to a variant, you should explicitly state the data type you want. If you do not specify a value or data type, vlax-make-variant allocates an uninitialized vlax-vbEmpty variant. Parent topic: About Converting Between AutoLISP and ActiveX Data Types (AutoLISP/ActiveX) Related Concepts About Safearrays with Variants (AutoLISP/ActiveX) Data Conversion Functions Reference (AutoLISP/ActiveX) Related Tasks To create a variant containing an array of values (AutoLISP/ActiveX) Was this helpful? Yes No About Safearrays (AutoLISP/ActiveX)

Arrays passed to ActiveX methods must be of the safearray type. These arrays are safe because you cannot accidentally assign values outside the array bounds and cause a data exception to occur. Note: ActiveX support in AutoLISP is limited to Windows only. Use the vlax-make-safearray function to create a safearray and use vlax-safearray-put-element or vlax-safearray-fill to populate a safearray with data. The vlax-make-safearray function requires a minimum of two arguments. The first argument identifies the type of data that will be stored in the array. Specify one of the following constants for the data type: vlax-vbInteger Integer vlax-vbLong Long integer vlax-vbSingle Single-precision floating-point number vlax-vbDouble Double-precision floating-point number

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 8 of 42

vlax-vbString String vlax-vbObject Object vlax-vbBoolean Boolean vlax-vbVariant Variant The constants evaluate to integer values. Because the integer values can change, you should always refer to the constant, not the integer value. Lookup vlax-make-safearray for the current integer value assigned to each constant. The remaining arguments to vlax-make-safearray specify the upper and lower bounds of each dimension of the array. You can create single or multidimensional arrays with vlax-make-safearray. The lower bound for an index can be zero or any positive or negative integer. For example, the following function call creates a single-dimension array consisting of doubles, with a starting index of 0:

(setq point (vlax-make-safearray vlax-vbDouble '(0 . 2))) #<safearray...>

The upper bound specified in this example is 2, so the array will hold three elements (element 0, element 1, and element 2). Different dimensions can have different bounds. For example, the following function call creates a two-dimension array of strings. The first dimension starts at index 0 and contains two elements, while the second dimension starts at index 1 and contains three elements:

(setq mat2 (vlax-make-safearray vlax-vbString '(0 . 1) '(1 . 3))) #<safearray...>

The following functions are used to work with an array: vlax-safearray-fill – Stores data in the elements of a safearray. vlax-safearray-put-element – Assigns a value to an element in a safearray. vlax-safearray-type – Returns the data type of a safearray. vlax-safearray-get-dim – Returns the number of dimensions in a safearray. vlax-safearray-get-l-bound – Returns the lower boundary (first index) of a dimension in a safearray. vlax-safearray-get-u-bound – Returns the upper boundary (last index) of a dimension in a safearray. vlax-safearray-get-element – Returns the value for an element in a safearray. Topics in this section About Populating Elements in a Safearray (AutoLISP/ActiveX) After you create an array using vlax-make-safearray, you can use either vlax-safearray-fill or vlax-safearray-put-element to populate the array with data. About Getting an Element of a Safearray (AutoLISP/ActiveX) Arrays are used to return multiple values from and pass multiple values to an ActiveX function. Parent topic: About Converting Between AutoLISP and ActiveX Data Types (AutoLISP/ActiveX) Related Concepts About Working with Variants (AutoLISP/ActiveX) About Safearrays with Variants (AutoLISP/ActiveX) About Getting an Element of a Safearray (AutoLISP/ActiveX) About Populating Elements in a Safearray (AutoLISP/ActiveX) Data Conversion Functions Reference (AutoLISP/ActiveX) Related Tasks To create a variant containing an array of values (AutoLISP/ActiveX) Was this helpful? Yes No About Populating Elements in a Safearray (AutoLISP/ActiveX)

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 9 of 42

After you create an array using vlax-make-safearray, you can use either vlax-safearray-fill or vlax-safearray-put-element to populate the array with data. Note: ActiveX support in AutoLISP is limited to Windows only. Populating an array with vlax-safearray-fill The vlax-safearray-fill function requires two arguments: the variable containing the array you are populating and a list of the values to be assigned to the array elements. You must specify as many values as there are elements in the array. For example, the following code populates a single-dimension array of three doubles:

(setq point (vlax-make-safearray vlax-vbDouble '(0 . 2))) (vlax-safearray-fill point (list 100 100 0))

#<safearray...>

The contents of the array can be displayed in list form with the vlax-safearray->list function:

(vlax-safearray->list point) (100.0 100.0 0.0)

If a value is not specified for every element in the array, vlax-safearray-fill results in an error. When working with a multi-dimensional array, you must pass a list of lists to vlax-safearray-fill, with each list corresponding to a dimension. For example, the following statement assigns values to a two-dimension array of strings that contains three elements in each dimension:

(setq mat2 (vlax-make-safearray vlax-vbString '(0 . 1) '(1 . 3))) (vlax-safearray-fill mat2 '(("a" "b" "c") ("d" "e" "f")))

#<safearray...>

Use vlax-safearray->list to confirm the contents of mat2:

(vlax-safearray->list mat2) (("a" "b" "c") ("d" "e" "f"))

Populating an array with vlax-safearray-put-element The vlax-safearray-put-element function can be used to assign values to one or more elements of a safearray. The number of arguments required by this function depends on the number of dimensions in the array. The following rules apply to specifying arguments to vlax-safearray-put-element: The first argument always names the safearray to which you are assigning a value. The next set of arguments identifies index values pointing to the element to which you are assigning a value. For a single-dimension array, specify one index value; for a two-dimension array, specify two index values, and so on. The final argument is always the value to be assigned to the safearray element. For example, the following code populates a single-dimension array of three doubles:

(setq point (vlax-make-safearray vlax-vbDouble '(0 . 2))) #<safearray...> (vlax-safearray-put-element point 0 100) (vlax-safearray-put-element point 1 100) (vlax-safearray-put-element point 2 0)

If you need to change a value of an element in the array, you can make a call to vlax-safearray-put-element again. The following changes the second element of the array to a value of 50:

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 10 of 42

(vlax-safearray-put-element point 1 50)

The following example creates and populates a two-dimension array of strings. The first dimension of the array starts at index 0, while the second dimension starts at index 1:

(setq mat2 (vlax-make-safearray vlax-vbString '(0 . 1) '(1 . 3))) #<safearray...> (vlax-safearray-put-element mat2 0 1 "a") (vlax-safearray-put-element mat2 0 2 "b") (vlax-safearray-put-element mat2 0 3 "c") (vlax-safearray-put-element mat2 1 1 "d") (vlax-safearray-put-element mat2 1 2 "e") (vlax-safearray-put-element mat2 1 3 "f")

You can use vlax-safearray->list to confirm the contents of the array:

(vlax-safearray->list mat2) (("a" "b" "c") ("d" "e" "f"))

Parent topic: About Safearrays (AutoLISP/ActiveX) Related Concepts About Working with Variants (AutoLISP/ActiveX) About Safearrays (AutoLISP/ActiveX) About Safearrays with Variants (AutoLISP/ActiveX) About Getting an Element of a Safearray (AutoLISP/ActiveX) Data Conversion Functions Reference (AutoLISP/ActiveX) Related Tasks To create a variant containing an array of values (AutoLISP/ActiveX) Was this helpful? Yes No About Getting an Element of a Safearray (AutoLISP/ActiveX)

Arrays are used to return multiple values from and pass multiple values to an ActiveX function. Note: ActiveX support in AutoLISP is limited to Windows only. The following functions are used to get the values assigned to the elements with in an array: vlax-safearray-type – Returns the data type of a safearray. vlax-safearray-get-dim – Returns the number of dimensions in a safearray. vlax-safearray-get-l-bound – Returns the lower boundary (first index) of a dimension in a safearray. vlax-safearray-get-u-bound – Returns the upper boundary (last index) of a dimension in a safearray. vlax-safearray-get-element – Returns the value for an element in a safearray. Data Type of an Array When working with AutoLISP functions, you need to know the type of data that you are working with. Each array is defined with a specific type of data. The vlax-safearray-type function is used to identify the type of data that an array was created to hold; and it requires one argument: the variable containing the array. This function returns an integer value that represents the data type that the array was created to hold. For example, the following code creates a single-dimension array of three doubles:

(setq point (vlax-make-safearray vlax-vbDouble '(0 . 2)))

(vlax-safearray-fill point (list 100 100 0))

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 11 of 42

#<safearray...>

For example, the following code returns a 5 because the array was defined to hold doubles:

(vlax-safearray-type point)

5

Dimensions in an Array Accessing the values of an array requires you to know the both number of dimensions and elements that an array was created with. The vlax-safearray-get-dim function returns an integer that represents the number of dimensions that an array was created with. The following code creates a single-dimension array of three doubles:

(setq point (vlax-make-safearray vlax-vbDouble '(0 . 2))) (vlax-safearray-get-dim point) 1

The following example creates a two-dimension array of strings:

(setq mat2 (vlax-make-safearray vlax-vbString '(0 . 1) '(1 . 3))) (vlax-safearray-get-dim mat2)

2

Elements in an Array Dimension After you know the number of dimensions in an array (using the vlax-safearray-get-dim function), you can get the lower (vlax-safearray-get-l-bound) and upper (vlax-safearray-get-u-bound) boundaries of an array. The boundaries of an array helps you to identify the number of elements in a dimension and the index range in which the elements of an array can be found at. The number of elements in an array dimension can be calculated by subtracting the values returned by the vlax-safearray-get-u-bound and vlax-safearray-get-l-bound functions. For example, the following returns the number of elements in a single-dimension array:

(setq point (vlax-make-safearray vlax-vbDouble '(0 . 2))) (setq arrayRange (1+ (- (vlax-safearray-get-u-bound point 1) (vlax-safearray-get-l-bound point 1))))

3

The following returns the number of elements in the second dimension of a two-dimension array:

(setq mat1 (vlax-make-safearray vlax-vbString '(0 . 1) '(2 . 5))) (setq arrayRange (1+ (- (vlax-safearray-get-u-bound mat1 2) (vlax-safearray-get-l-bound mat1 2)))) 4

Get the Value of an Element in an Array After you know the number of dimensions and elements in an array, you can get the value of an element with the vlax-safearray-get-element function. For example, the following code populates a single-dimension array of three doubles:

(setq point (vlax-make-safearray vlax-vbDouble '(0 . 2))) (vlax-safearray-fill point (list 100 50 0)) #<safearray...>

The following returns the value of the second element in the array:

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 12 of 42

(vlax-safearray-get-element point 1) 50.0

The following code populates a two-dimension array of strings, and get the second element of the first dimension:

(setq mat2 (vlax-make-safearray vlax-vbString '(0 . 1) '(1 . 3))) (vlax-safearray-fill mat2 '(("a" "b" "c") ("d" "e" "f"))) (vlax-safearray-get-element mat2 0 2) "b"

Parent topic: About Safearrays (AutoLISP/ActiveX) Related Concepts About Working with Variants (AutoLISP/ActiveX) About Safearrays (AutoLISP/ActiveX) About Safearrays with Variants (AutoLISP/ActiveX) About Populating Elements in a Safearray (AutoLISP/ActiveX) Data Conversion Functions Reference (AutoLISP/ActiveX) Related Tasks To create a variant containing an array of values (AutoLISP/ActiveX) Was this helpful? Yes No About Safearrays with Variants (AutoLISP/ActiveX)

Safearray data must be passed to ActiveX methods through variants. Note: ActiveX support in AutoLISP is limited to Windows only. Before you can assign values to a safearray, you must first create it. Then the safearray can be assigned to a variant before passing it to a method. For methods that require a three-element array of doubles (typically to specify a point), you can use the vlax-3d-point function to build the required data structure. For example, the following call takes a list of points and converts the list into an array of three doubles:

(setq circCenter (vlax-3d-point '(3.0 3.0 0.0))) #<variant 8197 ...>

You can also pass vlax-3d-point two or three numbers, instead of a list. For example:

(setq circCenter (vlax-3d-point 3.0 3.0)) #<variant 8197 ...>

When you omit the third point, vlax-3d-point sets it to zero. You can use vlax-safearray->list to verify the contents of the variable set by vlax-3d-point:

(vlax-safearray->list (vlax-variant-value circcenter)) (3.0 3.0 0.0)

The vlax-TMatrix function performs a similar task for transformation matrices, which are required by the vla-TransformBy function. It builds the transformation matrix from four lists of four numbers each, converting all numbers to reals, if necessary. For example:

(vlax-tmatrix '((1 1 1 0) (1 2 3 0) (2 3 4 5) (2 9 8 3)))

#<variant 8197 ...>

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 13 of 42

If you need to create a variant for an array containing anything other than three doubles or a transformation matrix, you must build it yourself. Topics in this section To create a variant containing an array of values (AutoLISP/ActiveX) Safearrays are used in combination with ActiveX objects to represent points and matrixes. Parent topic: About Converting Between AutoLISP and ActiveX Data Types (AutoLISP/ActiveX) Related Concepts About Safearrays (AutoLISP/ActiveX) About Working with Variants (AutoLISP/ActiveX) About Getting an Element of a Safearray (AutoLISP/ActiveX) About Populating Elements in a Safearray (AutoLISP/ActiveX) Data Conversion Functions Reference (AutoLISP/ActiveX) Related Tasks To create a variant containing an array of values (AutoLISP/ActiveX) Was this helpful? Yes No To create a variant containing an array of values (AutoLISP/ActiveX)

Safearrays are used in combination with ActiveX objects to represent points and matrixes. Note: ActiveX support in AutoLISP is limited to Windows only. 1. At the Visual LISP Console window or AutoCAD Command prompt, allocate the space for the array using vlax-make-safearray and save the results to a variable with setq. 2. At the prompt, assign the values to the array using vlax-safearray-fill. 3. At the prompt, create a variant using vlax-make-variant and assign it the array. Example At the Visual LISP Console window or AutoCAD Command prompt, enter the following

(setq 4dubs (vlax-make-safearray vlax-vbDouble '(0 . 3))) (vlax-safearray-fill 4dubs '(3.0 6.0 7.2 1.0)) (setq var4dubs (vlax-make-variant 4dubs))

Parent topic: About Safearrays with Variants (AutoLISP/ActiveX) Related Concepts About Working with Variants (AutoLISP/ActiveX) About Safearrays (AutoLISP/ActiveX) About Safearrays with Variants (AutoLISP/ActiveX) About Populating Elements in a Safearray (AutoLISP/ActiveX) About Getting an Element of a Safearray (AutoLISP/ActiveX) Data Conversion Functions Reference (AutoLISP/ActiveX) Was this helpful? Yes No 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. Note: ActiveX 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:

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 14 of 42

(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)

VLA-ACTIVATE

VLA-ADD

VLA-ADD3DFACE

VLA-ADD3DMESH

VLA-ADD3DPOLY

VLA-ADDARC

VLA-ADDATTRIBUTE

VLA-ADDBOX

VLA-ADDCIRCLE

VLA-ADDCONE

VLA-ADDCUSTOMOBJECT

VLA-ADDCYLINDER

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 15 of 42

VLA-ADDDIM3POINTANGULAR

VLA-ADDDIMALIGNED

VLA-ADDDIMANGULAR

VLA-ADDDIMDIAMETRIC

VLA-ADDDIMORDINATE

VLA-ADDDIMRADIAL

VLA-ADDDIMROTATED

VLA-ADDELLIPSE

VLA-ADDELLIPTICALCONE

VLA-ADDELLIPTICALCYLINDER

VLA-ADDEXTRUDEDSOLID

VLA-ADDEXTRUDEDSOLIDALONGPATH

VLA-ADDFITPOINT

VLA-ADDHATCH

VLA-ADDITEMS

VLA-ADDLEADER

VLA-ADDLIGHTWEIGHTPOLYLINE

VLA-ADDLINE

VLA-ADDMENUITEM

VLA-ADDMINSERTBLOCK

VLA-ADDMLINE

VLA-ADDMTEXT

VLA-ADDOBJECT

VLA-ADDPOINT

VLA-ADDPOLYFACEMESH

VLA-ADDPOLYLINE

VLA-ADDPVIEWPORT

VLA-ADDRASTER

VLA-ADDRAY

VLA-ADDREGION

VLA-ADDREVOLVEDSOLID

VLA-ADDSEPARATOR

VLA-ADDSHAPE

VLA-ADDSOLID

VLA-ADDSPHERE

VLA-ADDSPLINE

VLA-ADDSUBMENU

VLA-ADDTEXT

VLA-ADDTOLERANCE

VLA-ADDTOOLBARBUTTON

VLA-ADDTORUS

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 16 of 42

VLA-ADDTRACE

VLA-ADDVERTEX

VLA-ADDWEDGE

VLA-ADDXLINE

VLA-ADDXRECORD

VLA-ANGLEFROMXAXIS

VLA-ANGLETOREAL

VLA-ANGLETOSTRING

VLA-APPENDINNERLOOP

VLA-APPENDITEMS

VLA-APPENDOUTERLOOP

VLA-APPENDVERTEX

VLA-ARRAYPOLAR

VLA-ARRAYRECTANGULAR

VLA-ATTACHEXTERNALREFERENCE

VLA-ATTACHTOOLBARTOFLYOUT

VLA-AUDITINFO

VLA-BIND

VLA-BOOLEAN

VLA-CHECKINTERFERENCE

VLA-CLEAR

VLA-CLIPBOUNDARY

VLA-CLOSE

VLA-COPY

VLA-COPYFROM

VLA-CREATETYPEDARRAY

VLA-DELETE

VLA-DELETEFITPOINT

VLA-DELETEPROFILE

VLA-DETACH

VLA-DISPLAY

VLA-DISPLAYPLOTPREVIEW

VLA-DISTANCETOREAL

VLA-DOCK

VLA-ELEVATEORDER

VLA-ENDUNDOMARK

VLA-ERASE

VLA-EVAL

VLA-EVALUATE

VLA-EXPLODE

VLA-EXPORT

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 17 of 42

VLA-EXPORTPROFILE

VLA-FLOAT

VLA-GET-ACTIVE

VLA-GET-ACTIVEDIMSTYLE

VLA-GET-ACTIVEDOCUMENT

VLA-GET-ACTIVELAYER

VLA-GET-ACTIVELAYOUT

VLA-GET-ACTIVELINETYPE

VLA-GET-ACTIVEPROFILE

VLA-GET-ACTIVEPVIEWPORT

VLA-GET-ACTIVESELECTIONSET

VLA-GET-ACTIVESPACE

VLA-GET-ACTIVETEXTSTYLE

VLA-GET-ACTIVEUCS

VLA-GET-ACTIVEVIEWPORT

VLA-GET-ALIGNMENT

VLA-GET-ALIGNMENTPOINTACQUISITION

VLA-GET-ALLOWLONGSYMBOLNAMES

VLA-GET-ALTFONTFILE

VLA-GET-ALTROUNDDISTANCE

VLA-GET-ALTSUPPRESSLEADINGZEROS

VLA-GET-ALTSUPPRESSTRAILINGZEROS

VLA-GET-ALTSUPPRESSZEROFEET

VLA-GET-ALTSUPPRESSZEROINCHES

VLA-GET-ALTTABLETMENUFILE

VLA-GET-ALTTEXTPREFIX

VLA-GET-ALTTEXTSUFFIX

VLA-GET-ALTTOLERANCEPRECISION

VLA-GET-ALTTOLERANCESUPPRESSLEADINGZEROS

VLA-GET-ALTTOLERANCESUPPRESSTRAILINGZEROS

VLA-GET-ALTTOLERANCESUPPRESSZEROFEET

VLA-GET-ALTTOLERANCESUPPRESSZEROINCHES

VLA-GET-ALTUNITS

VLA-GET-ALTUNITSFORMAT

VLA-GET-ALTUNITSPRECISION

VLA-GET-ALTUNITSSCALE

VLA-GET-ANGLE

VLA-GET-ANGLEFORMAT

VLA-GET-ANGLEVERTEX

VLA-GET-ANNOTATION

VLA-GET-APPLICATION

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 18 of 42

VLA-GET-ARCLENGTH

VLA-GET-ARCSMOOTHNESS

VLA-GET-AREA

VLA-GET-ARROWHEAD1BLOCK

VLA-GET-ARROWHEAD1TYPE

VLA-GET-ARROWHEAD2BLOCK

VLA-GET-ARROWHEAD2TYPE

VLA-GET-ARROWHEADBLOCK

VLA-GET-ARROWHEADSIZE

VLA-GET-ARROWHEADTYPE

VLA-GET-ASSOCIATIVEHATCH

VLA-GET-ATTACHMENTPOINT

VLA-GET-AUTOAUDIT

VLA-GET-AUTOSAVEINTERVAL

VLA-GET-AUTOSAVEPATH

VLA-GET-AUTOSNAPAPERTURE

VLA-GET-AUTOSNAPAPERTURESIZE

VLA-GET-AUTOSNAPMAGNET

VLA-GET-AUTOSNAPMARKER

VLA-GET-AUTOSNAPMARKERCOLOR

VLA-GET-AUTOSNAPMARKERSIZE

VLA-GET-AUTOSNAPTOOLTIP

VLA-GET-AUTOTRACKINGVECCOLOR

VLA-GET-AUTOTRACKTOOLTIP

VLA-GET-BACKWARD

VLA-GET-BASEPOINT

VLA-GET-BATCHPLOTPROGRESS

VLA-GET-BEEPONERROR

VLA-GET-BIGFONTFILE

VLA-GET-BLOCK

VLA-GET-BLOCKS

VLA-GET-BRIGHTNESS

VLA-GET-CANONICALMEDIANAME

VLA-GET-CAPTION

VLA-GET-CEINSERTUNITS

VLA-GET-CEINSERTUNITSACTION

VLA-GET-CELOADPALETTE

VLA-GET-CENTER

VLA-GET-CENTERMARKSIZE

VLA-GET-CENTERPLOT

VLA-GET-CENTERTYPE

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 19 of 42

VLA-GET-CENTROID

VLA-GET-CHECK

VLA-GET-CIRCUMFERENCE

VLA-GET-CLIPPED

VLA-GET-CLIPPINGENABLED

VLA-GET-CLOSED

VLA-GET-COLOR

VLA-GET-COLUMNS

VLA-GET-COLUMNSPACING

VLA-GET-CONFIGFILE

VLA-GET-CONFIGNAME

VLA-GET-CONSTANT

VLA-GET-CONSTANTWIDTH

VLA-GET-CONTOURLINESPERSURFACE

VLA-GET-CONTRAST

VLA-GET-CONTROLPOINTS

VLA-GET-COORDINATE

VLA-GET-COORDINATES

VLA-GET-COUNT

VLA-GET-CREATEBACKUP

VLA-GET-CURSORSIZE

VLA-GET-CUSTOMDICTIONARY

VLA-GET-CUSTOMSCALE

VLA-GET-DATABASE

VLA-GET-DECIMALSEPARATOR

VLA-GET-DEFAULTINTERNETURL

VLA-GET-DEFAULTOUTPUTDEVICE

VLA-GET-DEFAULTPLOTSTYLEFORLAYERS

VLA-GET-DEFAULTPLOTSTYLEFOROBJECTS

VLA-GET-DEGREE

VLA-GET-DELTA

VLA-GET-DEMANDLOADARXAPP

VLA-GET-DESCRIPTION

VLA-GET-DIAMETER

VLA-GET-DICTIONARIES

VLA-GET-DIMENSIONLINECOLOR

VLA-GET-DIMENSIONLINEEXTEND

VLA-GET-DIMENSIONLINEWEIGHT

VLA-GET-DIMLINE1SUPPRESS

VLA-GET-DIMLINE2SUPPRESS

VLA-GET-DIMLINEINSIDE

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 20 of 42

VLA-GET-DIMLINESUPPRESS

VLA-GET-DIMSTYLES

VLA-GET-DIRECTION

VLA-GET-DIRECTIONVECTOR

VLA-GET-DISPLAY

VLA-GET-DISPLAYDRAGGEDOBJECT

VLA-GET-DISPLAYGRIPS

VLA-GET-DISPLAYGRIPSWITHINBLOCKS

VLA-GET-DISPLAYLAYOUTTABS

VLA-GET-DISPLAYLOCKED

VLA-GET-DISPLAYOLESCALE

VLA-GET-DISPLAYSCREENMENU

VLA-GET-DISPLAYSCROLLBARS

VLA-GET-DISPLAYSILHOUETTE

VLA-GET-DOCKEDVISIBLELINES

VLA-GET-DOCKSTATUS

VLA-GET-DOCUMENTS

VLA-GET-DRAFTING

VLA-GET-DRAWINGDIRECTION

VLA-GET-DRIVERSPATH

VLA-GET-ELEVATION

VLA-GET-ELEVATIONMODELSPACE

VLA-GET-ELEVATIONPAPERSPACE

VLA-GET-ENABLE

VLA-GET-ENABLESTARTUPDIALOG

VLA-GET-ENDANGLE

VLA-GET-ENDPARAMETER

VLA-GET-ENDPOINT

VLA-GET-ENDTANGENT

VLA-GET-EXTENSIONLINECOLOR

VLA-GET-EXTENSIONLINEEXTEND

VLA-GET-EXTENSIONLINEOFFSET

VLA-GET-EXTENSIONLINEWEIGHT

VLA-GET-EXTLINE1ENDPOINT

VLA-GET-EXTLINE1POINT

VLA-GET-EXTLINE1STARTPOINT

VLA-GET-EXTLINE1SUPPRESS

VLA-GET-EXTLINE2ENDPOINT

VLA-GET-EXTLINE2POINT

VLA-GET-EXTLINE2STARTPOINT

VLA-GET-EXTLINE2SUPPRESS

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 21 of 42

VLA-GET-FADE

VLA-GET-FIELDLENGTH

VLA-GET-FILES

VLA-GET-FIT

VLA-GET-FITPOINTS

VLA-GET-FITTOLERANCE

VLA-GET-FLOATINGROWS

VLA-GET-FLYOUT

VLA-GET-FONTFILE

VLA-GET-FONTFILEMAP

VLA-GET-FORCELINEINSIDE

VLA-GET-FRACTIONFORMAT

VLA-GET-FREEZE

VLA-GET-FULLCRCVALIDATION

VLA-GET-FULLNAME

VLA-GET-FULLSCREENTRACKINGVECTOR

VLA-GET-GRAPHICSWINLAYOUTBACKGRNDCOLOR

VLA-GET-GRAPHICSWINMODELBACKGRNDCOLOR

VLA-GET-GRIDON

VLA-GET-GRIPCOLORSELECTED

VLA-GET-GRIPCOLORUNSELECTED

VLA-GET-GRIPSIZE

VLA-GET-GROUPS

VLA-GET-HANDLE

VLA-GET-HASATTRIBUTES

VLA-GET-HASEXTENSIONDICTIONARY

VLA-GET-HATCHSTYLE

VLA-GET-HEIGHT

VLA-GET-HELPFILEPATH

VLA-GET-HELPSTRING

VLA-GET-HISTORYLINES

VLA-GET-HORIZONTALTEXTPOSITION

VLA-GET-HWND

VLA-GET-HYPERLINKDISPLAYCURSOR

VLA-GET-HYPERLINKDISPLAYTOOLTIP

VLA-GET-HYPERLINKS

VLA-GET-IMAGEFILE

VLA-GET-IMAGEFRAMEHIGHLIGHT

VLA-GET-IMAGEHEIGHT

VLA-GET-IMAGEVISIBILITY

VLA-GET-IMAGEWIDTH

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 22 of 42

VLA-GET-INCREMENTALSAVEPERCENT

VLA-GET-INDEX

VLA-GET-INSERTIONPOINT

VLA-GET-INVISIBLE

VLA-GET-ISLAYOUT

VLA-GET-ISOPENWIDTH

VLA-GET-ISPERIODIC

VLA-GET-ISPLANAR

VLA-GET-ISRATIONAL

VLA-GET-ISXREF

VLA-GET-KEYBOARDACCELERATOR

VLA-GET-KEYBOARDPRIORITY

VLA-GET-KNOTS

VLA-GET-LABEL

VLA-GET-LARGEBUTTONS

VLA-GET-LASTHEIGHT

VLA-GET-LAYER

VLA-GET-LAYERON

VLA-GET-LAYERS

VLA-GET-LAYOUT

VLA-GET-LAYOUTCREATEVIEWPORT

VLA-GET-LAYOUTCROSSHAIRCOLOR

VLA-GET-LAYOUTDISPLAYMARGINS

VLA-GET-LAYOUTDISPLAYPAPER

VLA-GET-LAYOUTDISPLAYPAPERSHADOW

VLA-GET-LAYOUTS

VLA-GET-LAYOUTSHOWPLOTSETUP

VLA-GET-LEADERLENGTH

VLA-GET-LEFT

VLA-GET-LEGACYSTYLESHEET

VLA-GET-LENGTH

VLA-GET-LENSLENGTH

VLA-GET-LICENSESERVER

VLA-GET-LIMITS

VLA-GET-LINEARSCALEFACTOR

VLA-GET-LINESPACINGFACTOR

VLA-GET-LINESPACINGSTYLE

VLA-GET-LINETYPE

VLA-GET-LINETYPEGENERATION

VLA-GET-LINETYPES

VLA-GET-LINETYPESCALE

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 23 of 42

VLA-GET-LINEWEIGHT

VLA-GET-LOCALEID

VLA-GET-LOCK

VLA-GET-LOGFILEON

VLA-GET-LOGFILEPATH

VLA-GET-LOWERLEFTCORNER

VLA-GET-MACRO

VLA-GET-MAINDICTIONARY

VLA-GET-MAJORAXIS

VLA-GET-MAJORRADIUS

VLA-GET-MAXACTIVEVIEWPORTS

VLA-GET-MAXAUTOCADWINDOW

VLA-GET-MAXNUMOFSYMBOLS

VLA-GET-MCLOSE

VLA-GET-MDENSITY

VLA-GET-MEASUREMENT

VLA-GET-MEASUREMENTUNITS

VLA-GET-MENUBAR

VLA-GET-MENUFILE

VLA-GET-MENUFILENAME

VLA-GET-MENUGROUPS

VLA-GET-MENUS

VLA-GET-MINORAXIS

VLA-GET-MINORRADIUS

VLA-GET-MODE

VLA-GET-MODELCROSSHAIRCOLOR

VLA-GET-MODELSPACE

VLA-GET-MODELTYPE

VLA-GET-MOMENTOFINERTIA

VLA-GET-MONOCHROMEVECTORS

VLA-GET-MRUNUMBER

VLA-GET-MSPACE

VLA-GET-MVERTEXCOUNT

VLA-GET-NAME

VLA-GET-NAMENOMNEMONIC

VLA-GET-NCLOSE

VLA-GET-NDENSITY

VLA-GET-NORMAL

VLA-GET-NUMBEROFCONTROLPOINTS

VLA-GET-NUMBEROFCOPIES

VLA-GET-NUMBEROFFACES

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 24 of 42

VLA-GET-NUMBEROFFITPOINTS

VLA-GET-NUMBEROFLOOPS

VLA-GET-NUMBEROFVERTICES

VLA-GET-NVERTEXCOUNT

VLA-GET-OBJECTARXPATH

VLA-GET-OBJECTID

VLA-GET-OBJECTNAME

VLA-GET-OBJECTSNAPMODE

VLA-GET-OBJECTSORTBYPLOTTING

VLA-GET-OBJECTSORTBYPSOUTPUT

VLA-GET-OBJECTSORTBYREDRAWS

VLA-GET-OBJECTSORTBYREGENS

VLA-GET-OBJECTSORTBYSELECTION

VLA-GET-OBJECTSORTBYSNAP

VLA-GET-OBLIQUEANGLE

VLA-GET-OLELAUNCH

VLA-GET-OLEQUALITY

VLA-GET-ONMENUBAR

VLA-GET-OPENSAVE

VLA-GET-ORIGIN

VLA-GET-ORTHOENABLED

VLA-GET-ORTHOON

VLA-GET-OUTPUT

VLA-GET-PAPERSPACE

VLA-GET-PAPERUNITS

VLA-GET-PARENT

VLA-GET-PATH

VLA-GET-PATTERNANGLE

VLA-GET-PATTERNDOUBLE

VLA-GET-PATTERNNAME

VLA-GET-PATTERNSCALE

VLA-GET-PATTERNSPACE

VLA-GET-PATTERNTYPE

VLA-GET-PERIMETER

VLA-GET-PICKADD

VLA-GET-PICKAUTO

VLA-GET-PICKBOXSIZE

VLA-GET-PICKDRAG

VLA-GET-PICKFIRST

VLA-GET-PICKFIRSTSELECTIONSET

VLA-GET-PICKGROUP

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 25 of 42

VLA-GET-PLOT

VLA-GET-PLOTCONFIGURATIONS

VLA-GET-PLOTHIDDEN

VLA-GET-PLOTLEGACY

VLA-GET-PLOTORIGIN

VLA-GET-PLOTPOLICYFORLEGACYDWGS

VLA-GET-PLOTPOLICYFORNEWDWGS

VLA-GET-PLOTROTATION

VLA-GET-PLOTSTYLENAME

VLA-GET-PLOTSTYLESHEET

VLA-GET-PLOTTABLE

VLA-GET-PLOTTYPE

VLA-GET-PLOTVIEWPORTBORDERS

VLA-GET-PLOTVIEWPORTSFIRST

VLA-GET-PLOTWITHLINEWEIGHTS

VLA-GET-PLOTWITHPLOTSTYLES

VLA-GET-POLARTRACKINGVECTOR

VLA-GET-POSTSCRIPTPROLOGFILE

VLA-GET-PREFERENCES

VLA-GET-PRESET

VLA-GET-PRIMARYUNITSPRECISION

VLA-GET-PRINCIPALDIRECTIONS

VLA-GET-PRINCIPALMOMENTS

VLA-GET-PRINTERCONFIGPATH

VLA-GET-PRINTERDESCPATH

VLA-GET-PRINTERPAPERSIZEALERT

VLA-GET-PRINTERSPOOLALERT

VLA-GET-PRINTERSTYLESHEETPATH

VLA-GET-PRINTFILE

VLA-GET-PRINTSPOOLERPATH

VLA-GET-PRINTSPOOLEXECUTABLE

VLA-GET-PRODUCTOFINERTIA

VLA-GET-PROFILES

VLA-GET-PROMPTSTRING

VLA-GET-PROXYIMAGE

VLA-GET-QUIETERRORMODE

VLA-GET-RADIIOFGYRATION

VLA-GET-RADIUS

VLA-GET-RADIUSRATIO

VLA-GET-READONLY

VLA-GET-REGISTEREDAPPLICATIONS

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 26 of 42

VLA-GET-REMOVEHIDDENLINES

VLA-GET-RENDERSMOOTHNESS

VLA-GET-ROTATION

VLA-GET-ROUNDDISTANCE

VLA-GET-ROWS

VLA-GET-ROWSPACING

VLA-GET-SAVEASTYPE

VLA-GET-SAVED

VLA-GET-SAVEPREVIEWTHUMBNAIL

VLA-GET-SCALEFACTOR

VLA-GET-SCALELINEWEIGHTS

VLA-GET-SECONDPOINT

VLA-GET-SEGMENTPERPOLYLINE

VLA-GET-SELECTION

VLA-GET-SELECTIONSETS

VLA-GET-SHORTCUTMENU

VLA-GET-SHOWPLOTSTYLES

VLA-GET-SHOWPROXYDIALOGBOX

VLA-GET-SHOWRASTERIMAGE

VLA-GET-SHOWWARNINGMESSAGES

VLA-GET-SINGLEDOCUMENTMODE

VLA-GET-SNAPBASEPOINT

VLA-GET-SNAPON

VLA-GET-SNAPROTATIONANGLE

VLA-GET-SOLIDCHECK

VLA-GET-SOLIDFILL

VLA-GET-STANDARDSCALE

VLA-GET-STARTANGLE

VLA-GET-STARTPARAMETER

VLA-GET-STARTPOINT

VLA-GET-STARTTANGENT

VLA-GET-STATUSID

VLA-GET-STORESQLINDEX

VLA-GET-STYLENAME

VLA-GET-STYLESHEET

VLA-GET-SUBMENU

VLA-GET-SUPPORTPATH

VLA-GET-SUPPRESSLEADINGZEROS

VLA-GET-SUPPRESSTRAILINGZEROS

VLA-GET-SUPPRESSZEROFEET

VLA-GET-SUPPRESSZEROINCHES

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 27 of 42

VLA-GET-SYSTEM

VLA-GET-TABLESREADONLY

VLA-GET-TABORDER

VLA-GET-TAGSTRING

VLA-GET-TARGET

VLA-GET-TEMPFILEEXTENSION

VLA-GET-TEMPFILEPATH

VLA-GET-TEMPLATEDWGPATH

VLA-GET-TEMPXREFPATH

VLA-GET-TEXTALIGNMENTPOINT

VLA-GET-TEXTCOLOR

VLA-GET-TEXTEDITOR

VLA-GET-TEXTFONT

VLA-GET-TEXTFONTSIZE

VLA-GET-TEXTFONTSTYLE

VLA-GET-TEXTFRAMEDISPLAY

VLA-GET-TEXTGAP

VLA-GET-TEXTGENERATIONFLAG

VLA-GET-TEXTHEIGHT

VLA-GET-TEXTINSIDE

VLA-GET-TEXTINSIDEALIGN

VLA-GET-TEXTMOVEMENT

VLA-GET-TEXTOUTSIDEALIGN

VLA-GET-TEXTOVERRIDE

VLA-GET-TEXTPOSITION

VLA-GET-TEXTPRECISION

VLA-GET-TEXTPREFIX

VLA-GET-TEXTROTATION

VLA-GET-TEXTSTRING

VLA-GET-TEXTSTYLE

VLA-GET-TEXTSTYLES

VLA-GET-TEXTSUFFIX

VLA-GET-TEXTUREMAPPATH

VLA-GET-TEXTWINBACKGRNDCOLOR

VLA-GET-TEXTWINTEXTCOLOR

VLA-GET-THICKNESS

VLA-GET-TOLERANCEDISPLAY

VLA-GET-TOLERANCEHEIGHTSCALE

VLA-GET-TOLERANCEJUSTIFICATION

VLA-GET-TOLERANCELOWERLIMIT

VLA-GET-TOLERANCEPRECISION

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 28 of 42

VLA-GET-TOLERANCESUPPRESSLEADINGZEROS

VLA-GET-TOLERANCESUPPRESSTRAILINGZEROS

VLA-GET-TOLERANCESUPPRESSZEROFEET

VLA-GET-TOLERANCESUPPRESSZEROINCHES

VLA-GET-TOLERANCEUPPERLIMIT

VLA-GET-TOOLBARS

VLA-GET-TOP

VLA-GET-TOTALANGLE

VLA-GET-TRANSLATEIDS

VLA-GET-TRANSPARENCY

VLA-GET-TRUECOLORIMAGES

VLA-GET-TWISTANGLE

VLA-GET-TYPE

VLA-GET-UCSICONATORIGIN

VLA-GET-UCSICONON

VLA-GET-UCSPERVIEWPORT

VLA-GET-UNITSFORMAT

VLA-GET-UPPERRIGHTCORNER

VLA-GET-UPSIDEDOWN

VLA-GET-URL

VLA-GET-URLDESCRIPTION

VLA-GET-USER

VLA-GET-USERCOORDINATESYSTEMS

VLA-GET-USESTANDARDSCALE

VLA-GET-UTILITY

VLA-GET-VBE

VLA-GET-VERIFY

VLA-GET-VERSION

VLA-GET-VERTICALTEXTPOSITION

VLA-GET-VIEWPORTDEFAULT

VLA-GET-VIEWPORTON

VLA-GET-VIEWPORTS

VLA-GET-VIEWS

VLA-GET-VIEWTOPLOT

VLA-GET-VISIBILITYEDGE1

VLA-GET-VISIBILITYEDGE2

VLA-GET-VISIBILITYEDGE3

VLA-GET-VISIBILITYEDGE4

VLA-GET-VISIBLE

VLA-GET-VOLUME

VLA-GET-WEIGHTS

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 29 of 42

VLA-GET-WIDTH

VLA-GET-WINDOWSTATE

VLA-GET-WINDOWTITLE

VLA-GET-WORKSPACEPATH

VLA-GET-XREFDATABASE

VLA-GET-XREFDEMANDLOAD

VLA-GET-XREFEDIT

VLA-GET-XREFFADEINTENSITY

VLA-GET-XREFLAYERVISIBILITY

VLA-GET-XSCALEFACTOR

VLA-GET-XVECTOR

VLA-GET-YSCALEFACTOR

VLA-GET-YVECTOR

VLA-GET-ZSCALEFACTOR

VLA-GETANGLE

VLA-GETATTRIBUTES

VLA-GETBITMAPS

VLA-GETBOUNDINGBOX

VLA-GETBULGE

VLA-GETCONSTANTATTRIBUTES

VLA-GETCONTROLPOINT

VLA-GETCORNER

VLA-GETCUSTOMSCALE

VLA-GETDISTANCE

VLA-GETENTITY

VLA-GETEXTENSIONDICTIONARY

VLA-GETFITPOINT

VLA-GETFONT

VLA-GETGRIDSPACING

VLA-GETINPUT

VLA-GETINTEGER

VLA-GETINTERFACEOBJECT

VLA-GETINVISIBLEEDGE

VLA-GETKEYWORD

VLA-GETLOOPAT

VLA-GETNAME

VLA-GETOBJECT

VLA-GETORIENTATION

VLA-GETPAPERMARGINS

VLA-GETPAPERSIZE

VLA-GETPOINT

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 30 of 42

VLA-GETPROJECTFILEPATH

VLA-GETREAL

VLA-GETSNAPSPACING

VLA-GETSTRING

VLA-GETSUBENTITY

VLA-GETUCSMATRIX

VLA-GETVARIABLE

VLA-GETWEIGHT

VLA-GETWIDTH

VLA-GETWINDOWTOPLOT

VLA-GETXDATA

VLA-GETXRECORDDATA

VLA-HANDLETOOBJECT

VLA-HIGHLIGHT

VLA-IMPORT

VLA-IMPORTPROFILE

VLA-INITIALIZEUSERINPUT

VLA-INSERTBLOCK

VLA-INSERTINMENUBAR

VLA-INSERTLOOPAT

VLA-INSERTMENUINMENUBAR

VLA-INTERSECTWITH

VLA-ITEM

VLA-LISTADS

VLA-LISTARX

VLA-LOAD

VLA-LOADADS

VLA-LOADARX

VLA-LOADDVB

VLA-LOADSHAPEFILE

VLA-MIRROR

VLA-MIRROR3D

VLA-MODIFIED

VLA-MOVE

VLA-NEW

VLA-OBJECTIDTOOBJECT

VLA-OFFSET

VLA-OPEN

VLA-PLOTTODEVICE

VLA-PLOTTOFILE

VLA-POLARPOINT

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 31 of 42

VLA-PROMPT

VLA-PURGEALL

VLA-PURGEFITDATA

VLA-PUT-ACTIVEDIMSTYLE

VLA-PUT-ACTIVEDOCUMENT

VLA-PUT-ACTIVELAYER

VLA-PUT-ACTIVELAYOUT

VLA-PUT-ACTIVELINETYPE

VLA-PUT-ACTIVEPROFILE

VLA-PUT-ACTIVEPVIEWPORT

VLA-PUT-ACTIVESPACE

VLA-PUT-ACTIVETEXTSTYLE

VLA-PUT-ACTIVEUCS

VLA-PUT-ACTIVEVIEWPORT

VLA-PUT-ALIGNMENT

VLA-PUT-ALIGNMENTPOINTACQUISITION

VLA-PUT-ALLOWLONGSYMBOLNAMES

VLA-PUT-ALTFONTFILE

VLA-PUT-ALTROUNDDISTANCE

VLA-PUT-ALTSUPPRESSLEADINGZEROS

VLA-PUT-ALTSUPPRESSTRAILINGZEROS

VLA-PUT-ALTSUPPRESSZEROFEET

VLA-PUT-ALTSUPPRESSZEROINCHES

VLA-PUT-ALTTABLETMENUFILE

VLA-PUT-ALTTEXTPREFIX

VLA-PUT-ALTTEXTSUFFIX

VLA-PUT-ALTTOLERANCEPRECISION

VLA-PUT-ALTTOLERANCESUPPRESSLEADINGZEROS

VLA-PUT-ALTTOLERANCESUPPRESSTRAILINGZEROS

VLA-PUT-ALTTOLERANCESUPPRESSZEROFEET

VLA-PUT-ALTTOLERANCESUPPRESSZEROINCHES

VLA-PUT-ALTUNITS

VLA-PUT-ALTUNITSFORMAT

VLA-PUT-ALTUNITSPRECISION

VLA-PUT-ALTUNITSSCALE

VLA-PUT-ANGLEFORMAT

VLA-PUT-ANGLEVERTEX

VLA-PUT-ANNOTATION

VLA-PUT-ARCSMOOTHNESS

VLA-PUT-AREA

VLA-PUT-ARROWHEAD1BLOCK

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 32 of 42

VLA-PUT-ARROWHEAD1TYPE

VLA-PUT-ARROWHEAD2BLOCK

VLA-PUT-ARROWHEAD2TYPE

VLA-PUT-ARROWHEADBLOCK

VLA-PUT-ARROWHEADSIZE

VLA-PUT-ARROWHEADTYPE

VLA-PUT-ASSOCIATIVEHATCH

VLA-PUT-ATTACHMENTPOINT

VLA-PUT-AUTOAUDIT

VLA-PUT-AUTOSAVEINTERVAL

VLA-PUT-AUTOSAVEPATH

VLA-PUT-AUTOSNAPAPERTURE

VLA-PUT-AUTOSNAPAPERTURESIZE

VLA-PUT-AUTOSNAPMAGNET

VLA-PUT-AUTOSNAPMARKER

VLA-PUT-AUTOSNAPMARKERCOLOR

VLA-PUT-AUTOSNAPMARKERSIZE

VLA-PUT-AUTOSNAPTOOLTIP

VLA-PUT-AUTOTRACKINGVECCOLOR

VLA-PUT-AUTOTRACKTOOLTIP

VLA-PUT-BACKWARD

VLA-PUT-BASEPOINT

VLA-PUT-BATCHPLOTPROGRESS

VLA-PUT-BEEPONERROR

VLA-PUT-BIGFONTFILE

VLA-PUT-BRIGHTNESS

VLA-PUT-CANONICALMEDIANAME

VLA-PUT-CEINSERTUNITS

VLA-PUT-CEINSERTUNITSACTION

VLA-PUT-CELOADPALETTE

VLA-PUT-CENTER

VLA-PUT-CENTERMARKSIZE

VLA-PUT-CENTERPLOT

VLA-PUT-CENTERTYPE

VLA-PUT-CHECK

VLA-PUT-CIRCUMFERENCE

VLA-PUT-CLIPPINGENABLED

VLA-PUT-CLOSED

VLA-PUT-COLOR

VLA-PUT-COLUMNS

VLA-PUT-COLUMNSPACING

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 33 of 42

VLA-PUT-CONFIGNAME

VLA-PUT-CONSTANT

VLA-PUT-CONSTANTWIDTH

VLA-PUT-CONTOURLINESPERSURFACE

VLA-PUT-CONTRAST

VLA-PUT-CONTROLPOINTS

VLA-PUT-COORDINATE

VLA-PUT-COORDINATES

VLA-PUT-CREATEBACKUP

VLA-PUT-CURSORSIZE

VLA-PUT-CUSTOMDICTIONARY

VLA-PUT-CUSTOMSCALE

VLA-PUT-DECIMALSEPARATOR

VLA-PUT-DEFAULTINTERNETURL

VLA-PUT-DEFAULTOUTPUTDEVICE

VLA-PUT-DEFAULTPLOTSTYLEFORLAYERS

VLA-PUT-DEFAULTPLOTSTYLEFOROBJECTS

VLA-PUT-DEMANDLOADARXAPP

VLA-PUT-DESCRIPTION

VLA-PUT-DIAMETER

VLA-PUT-DIMENSIONLINECOLOR

VLA-PUT-DIMENSIONLINEEXTEND

VLA-PUT-DIMENSIONLINEWEIGHT

VLA-PUT-DIMLINE1SUPPRESS

VLA-PUT-DIMLINE2SUPPRESS

VLA-PUT-DIMLINEINSIDE

VLA-PUT-DIMLINESUPPRESS

VLA-PUT-DIRECTION

VLA-PUT-DIRECTIONVECTOR

VLA-PUT-DISPLAYDRAGGEDOBJECT

VLA-PUT-DISPLAYGRIPS

VLA-PUT-DISPLAYGRIPSWITHINBLOCKS

VLA-PUT-DISPLAYLAYOUTTABS

VLA-PUT-DISPLAYLOCKED

VLA-PUT-DISPLAYOLESCALE

VLA-PUT-DISPLAYSCREENMENU

VLA-PUT-DISPLAYSCROLLBARS

VLA-PUT-DISPLAYSILHOUETTE

VLA-PUT-DOCKEDVISIBLELINES

VLA-PUT-DRAWINGDIRECTION

VLA-PUT-DRIVERSPATH

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 34 of 42

VLA-PUT-ELEVATION

VLA-PUT-ELEVATIONMODELSPACE

VLA-PUT-ELEVATIONPAPERSPACE

VLA-PUT-ENABLE

VLA-PUT-ENABLESTARTUPDIALOG

VLA-PUT-ENDANGLE

VLA-PUT-ENDPARAMETER

VLA-PUT-ENDPOINT

VLA-PUT-ENDTANGENT

VLA-PUT-EXTENSIONLINECOLOR

VLA-PUT-EXTENSIONLINEEXTEND

VLA-PUT-EXTENSIONLINEOFFSET

VLA-PUT-EXTENSIONLINEWEIGHT

VLA-PUT-EXTLINE1ENDPOINT

VLA-PUT-EXTLINE1POINT

VLA-PUT-EXTLINE1STARTPOINT

VLA-PUT-EXTLINE1SUPPRESS

VLA-PUT-EXTLINE2ENDPOINT

VLA-PUT-EXTLINE2POINT

VLA-PUT-EXTLINE2STARTPOINT

VLA-PUT-EXTLINE2SUPPRESS

VLA-PUT-FADE

VLA-PUT-FIELDLENGTH

VLA-PUT-FIT

VLA-PUT-FITPOINTS

VLA-PUT-FITTOLERANCE

VLA-PUT-FLOATINGROWS

VLA-PUT-FONTFILE

VLA-PUT-FONTFILEMAP

VLA-PUT-FORCELINEINSIDE

VLA-PUT-FRACTIONFORMAT

VLA-PUT-FREEZE

VLA-PUT-FULLCRCVALIDATION

VLA-PUT-FULLSCREENTRACKINGVECTOR

VLA-PUT-GRAPHICSWINLAYOUTBACKGRNDCOLOR

VLA-PUT-GRAPHICSWINMODELBACKGRNDCOLOR

VLA-PUT-GRIDON

VLA-PUT-GRIPCOLORSELECTED

VLA-PUT-GRIPCOLORUNSELECTED

VLA-PUT-GRIPSIZE

VLA-PUT-HATCHSTYLE

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 35 of 42

VLA-PUT-HEIGHT

VLA-PUT-HELPFILEPATH

VLA-PUT-HELPSTRING

VLA-PUT-HISTORYLINES

VLA-PUT-HORIZONTALTEXTPOSITION

VLA-PUT-HYPERLINKDISPLAYCURSOR

VLA-PUT-HYPERLINKDISPLAYTOOLTIP

VLA-PUT-IMAGEFILE

VLA-PUT-IMAGEFRAMEHIGHLIGHT

VLA-PUT-IMAGEHEIGHT

VLA-PUT-IMAGEVISIBILITY

VLA-PUT-IMAGEWIDTH

VLA-PUT-INCREMENTALSAVEPERCENT

VLA-PUT-INSERTIONPOINT

VLA-PUT-INVISIBLE

VLA-PUT-ISOPENWIDTH

VLA-PUT-KEYBOARDACCELERATOR

VLA-PUT-KEYBOARDPRIORITY

VLA-PUT-KNOTS

VLA-PUT-LABEL

VLA-PUT-LARGEBUTTONS

VLA-PUT-LASTHEIGHT

VLA-PUT-LAYER

VLA-PUT-LAYERON

VLA-PUT-LAYOUTCREATEVIEWPORT

VLA-PUT-LAYOUTCROSSHAIRCOLOR

VLA-PUT-LAYOUTDISPLAYMARGINS

VLA-PUT-LAYOUTDISPLAYPAPER

VLA-PUT-LAYOUTDISPLAYPAPERSHADOW

VLA-PUT-LAYOUTSHOWPLOTSETUP

VLA-PUT-LEADERLENGTH

VLA-PUT-LEFT

VLA-PUT-LEGACYSTYLESHEET

VLA-PUT-LENSLENGTH

VLA-PUT-LIMITS

VLA-PUT-LINEARSCALEFACTOR

VLA-PUT-LINESPACINGFACTOR

VLA-PUT-LINESPACINGSTYLE

VLA-PUT-LINETYPE

VLA-PUT-LINETYPEGENERATION

VLA-PUT-LINETYPESCALE

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 36 of 42

VLA-PUT-LINEWEIGHT

VLA-PUT-LOCK

VLA-PUT-LOGFILEON

VLA-PUT-LOGFILEPATH

VLA-PUT-MACRO

VLA-PUT-MAINDICTIONARY

VLA-PUT-MAJORAXIS

VLA-PUT-MAJORRADIUS

VLA-PUT-MAXACTIVEVIEWPORTS

VLA-PUT-MAXAUTOCADWINDOW

VLA-PUT-MAXNUMOFSYMBOLS

VLA-PUT-MCLOSE

VLA-PUT-MDENSITY

VLA-PUT-MEASUREMENTUNITS

VLA-PUT-MENUFILE

VLA-PUT-MINORRADIUS

VLA-PUT-MODE

VLA-PUT-MODELCROSSHAIRCOLOR

VLA-PUT-MODELTYPE

VLA-PUT-MONOCHROMEVECTORS

VLA-PUT-MRUNUMBER

VLA-PUT-MSPACE

VLA-PUT-NAME

VLA-PUT-NCLOSE

VLA-PUT-NDENSITY

VLA-PUT-NORMAL

VLA-PUT-NUMBEROFCOPIES

VLA-PUT-OBJECTARXPATH

VLA-PUT-OBJECTSNAPMODE

VLA-PUT-OBJECTSORTBYPLOTTING

VLA-PUT-OBJECTSORTBYPSOUTPUT

VLA-PUT-OBJECTSORTBYREDRAWS

VLA-PUT-OBJECTSORTBYREGENS

VLA-PUT-OBJECTSORTBYSELECTION

VLA-PUT-OBJECTSORTBYSNAP

VLA-PUT-OBLIQUEANGLE

VLA-PUT-OLELAUNCH

VLA-PUT-OLEQUALITY

VLA-PUT-ORIGIN

VLA-PUT-ORTHOENABLED

VLA-PUT-ORTHOON

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 37 of 42

VLA-PUT-PAPERUNITS

VLA-PUT-PATH

VLA-PUT-PATTERNANGLE

VLA-PUT-PATTERNDOUBLE

VLA-PUT-PATTERNSCALE

VLA-PUT-PATTERNSPACE

VLA-PUT-PICKADD

VLA-PUT-PICKAUTO

VLA-PUT-PICKBOXSIZE

VLA-PUT-PICKDRAG

VLA-PUT-PICKFIRST

VLA-PUT-PICKGROUP

VLA-PUT-PLOTHIDDEN

VLA-PUT-PLOTLEGACY

VLA-PUT-PLOTORIGIN

VLA-PUT-PLOTPOLICYFORLEGACYDWGS

VLA-PUT-PLOTPOLICYFORNEWDWGS

VLA-PUT-PLOTROTATION

VLA-PUT-PLOTSTYLENAME

VLA-PUT-PLOTSTYLESHEET

VLA-PUT-PLOTTABLE

VLA-PUT-PLOTTYPE

VLA-PUT-PLOTVIEWPORTBORDERS

VLA-PUT-PLOTVIEWPORTSFIRST

VLA-PUT-PLOTWITHLINEWEIGHTS

VLA-PUT-PLOTWITHPLOTSTYLES

VLA-PUT-POLARTRACKINGVECTOR

VLA-PUT-POSTSCRIPTPROLOGFILE

VLA-PUT-PRESET

VLA-PUT-PRIMARYUNITSPRECISION

VLA-PUT-PRINTERCONFIGPATH

VLA-PUT-PRINTERDESCPATH

VLA-PUT-PRINTERPAPERSIZEALERT

VLA-PUT-PRINTERSPOOLALERT

VLA-PUT-PRINTERSTYLESHEETPATH

VLA-PUT-PRINTFILE

VLA-PUT-PRINTSPOOLERPATH

VLA-PUT-PRINTSPOOLEXECUTABLE

VLA-PUT-PROMPTSTRING

VLA-PUT-PROXYIMAGE

VLA-PUT-QUIETERRORMODE

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 38 of 42

VLA-PUT-RADIUS

VLA-PUT-RADIUSRATIO

VLA-PUT-REMOVEHIDDENLINES

VLA-PUT-RENDERSMOOTHNESS

VLA-PUT-ROTATION

VLA-PUT-ROUNDDISTANCE

VLA-PUT-ROWS

VLA-PUT-ROWSPACING

VLA-PUT-SAVEASTYPE

VLA-PUT-SAVEPREVIEWTHUMBNAIL

VLA-PUT-SCALEFACTOR

VLA-PUT-SCALELINEWEIGHTS

VLA-PUT-SECONDPOINT

VLA-PUT-SEGMENTPERPOLYLINE

VLA-PUT-SHOWPLOTSTYLES

VLA-PUT-SHOWPROXYDIALOGBOX

VLA-PUT-SHOWRASTERIMAGE

VLA-PUT-SHOWWARNINGMESSAGES

VLA-PUT-SINGLEDOCUMENTMODE

VLA-PUT-SNAPBASEPOINT

VLA-PUT-SNAPON

VLA-PUT-SNAPROTATIONANGLE

VLA-PUT-SOLIDCHECK

VLA-PUT-SOLIDFILL

VLA-PUT-STANDARDSCALE

VLA-PUT-STARTANGLE

VLA-PUT-STARTPARAMETER

VLA-PUT-STARTPOINT

VLA-PUT-STARTTANGENT

VLA-PUT-STORESQLINDEX

VLA-PUT-STYLENAME

VLA-PUT-STYLESHEET

VLA-PUT-SUPPORTPATH

VLA-PUT-SUPPRESSLEADINGZEROS

VLA-PUT-SUPPRESSTRAILINGZEROS

VLA-PUT-SUPPRESSZEROFEET

VLA-PUT-SUPPRESSZEROINCHES

VLA-PUT-TABLESREADONLY

VLA-PUT-TABORDER

VLA-PUT-TAGSTRING

VLA-PUT-TARGET

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 39 of 42

VLA-PUT-TEMPFILEEXTENSION

VLA-PUT-TEMPFILEPATH

VLA-PUT-TEMPLATEDWGPATH

VLA-PUT-TEMPXREFPATH

VLA-PUT-TEXTALIGNMENTPOINT

VLA-PUT-TEXTCOLOR

VLA-PUT-TEXTEDITOR

VLA-PUT-TEXTFONT

VLA-PUT-TEXTFONTSIZE

VLA-PUT-TEXTFONTSTYLE

VLA-PUT-TEXTFRAMEDISPLAY

VLA-PUT-TEXTGAP

VLA-PUT-TEXTGENERATIONFLAG

VLA-PUT-TEXTHEIGHT

VLA-PUT-TEXTINSIDE

VLA-PUT-TEXTINSIDEALIGN

VLA-PUT-TEXTMOVEMENT

VLA-PUT-TEXTOUTSIDEALIGN

VLA-PUT-TEXTOVERRIDE

VLA-PUT-TEXTPOSITION

VLA-PUT-TEXTPRECISION

VLA-PUT-TEXTPREFIX

VLA-PUT-TEXTROTATION

VLA-PUT-TEXTSTRING

VLA-PUT-TEXTSTYLE

VLA-PUT-TEXTSUFFIX

VLA-PUT-TEXTUREMAPPATH

VLA-PUT-TEXTWINBACKGRNDCOLOR

VLA-PUT-TEXTWINTEXTCOLOR

VLA-PUT-THICKNESS

VLA-PUT-TOLERANCEDISPLAY

VLA-PUT-TOLERANCEHEIGHTSCALE

VLA-PUT-TOLERANCEJUSTIFICATION

VLA-PUT-TOLERANCELOWERLIMIT

VLA-PUT-TOLERANCEPRECISION

VLA-PUT-TOLERANCESUPPRESSLEADINGZEROS

VLA-PUT-TOLERANCESUPPRESSTRAILINGZEROS

VLA-PUT-TOLERANCESUPPRESSZEROFEET

VLA-PUT-TOLERANCESUPPRESSZEROINCHES

VLA-PUT-TOLERANCEUPPERLIMIT

VLA-PUT-TOP

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 40 of 42

VLA-PUT-TRANSLATEIDS

VLA-PUT-TRANSPARENCY

VLA-PUT-TRUECOLORIMAGES

VLA-PUT-TWISTANGLE

VLA-PUT-TYPE

VLA-PUT-UCSICONATORIGIN

VLA-PUT-UCSICONON

VLA-PUT-UCSPERVIEWPORT

VLA-PUT-UNITSFORMAT

VLA-PUT-UPSIDEDOWN

VLA-PUT-URL

VLA-PUT-URLDESCRIPTION

VLA-PUT-USESTANDARDSCALE

VLA-PUT-VERIFY

VLA-PUT-VERTICALTEXTPOSITION

VLA-PUT-VIEWPORTDEFAULT

VLA-PUT-VIEWPORTON

VLA-PUT-VIEWTOPLOT

VLA-PUT-VISIBILITYEDGE1

VLA-PUT-VISIBILITYEDGE2

VLA-PUT-VISIBILITYEDGE3

VLA-PUT-VISIBILITYEDGE4

VLA-PUT-VISIBLE

VLA-PUT-WEIGHTS

VLA-PUT-WIDTH

VLA-PUT-WINDOWSTATE

VLA-PUT-WORKSPACEPATH

VLA-PUT-XREFDEMANDLOAD

VLA-PUT-XREFEDIT

VLA-PUT-XREFFADEINTENSITY

VLA-PUT-XREFLAYERVISIBILITY

VLA-PUT-XSCALEFACTOR

VLA-PUT-XVECTOR

VLA-PUT-YSCALEFACTOR

VLA-PUT-YVECTOR

VLA-PUT-ZSCALEFACTOR

VLA-QUIT

VLA-REALTOSTRING

VLA-REGEN

VLA-RELOAD

VLA-REMOVE

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 41 of 42

VLA-REMOVEFROMMENUBAR

VLA-REMOVEITEMS

VLA-REMOVEMENUFROMMENUBAR

VLA-RENAME

VLA-REPLACE

VLA-RESETPROFILE

VLA-REVERSE

VLA-ROTATE

VLA-ROTATE3D

VLA-RUNMACRO

VLA-SAVE

VLA-SAVEAS

VLA-SCALEENTITY

VLA-SECTIONSOLID

VLA-SELECT

VLA-SELECTATPOINT

VLA-SELECTBYPOLYGON

VLA-SELECTONSCREEN

VLA-SENDCOMMAND

VLA-SETBITMAPS

VLA-SETBULGE

VLA-SETCONTROLPOINT

VLA-SETCUSTOMSCALE

VLA-SETFITPOINT

VLA-SETFONT

VLA-SETGRIDSPACING

VLA-SETINVISIBLEEDGE

VLA-SETLAYOUTSTOPLOT

VLA-SETPATTERN

VLA-SETPROJECTFILEPATH

VLA-SETSNAPSPACING

VLA-SETVARIABLE

VLA-SETVIEW

VLA-SETWEIGHT

VLA-SETWIDTH

VLA-SETWINDOWTOPLOT

VLA-SETXDATA

VLA-SETXRECORDDATA

VLA-SLICESOLID

VLA-SPLIT

VLA-STARTBATCHMODE

Sanjoy Nath Geometrifying Trigonometry for Smart Lisp Generation For Advance Steel Modeling Editing Page 42 of 42

VLA-STARTUNDOMARK

VLA-TRANSFORMBY

VLA-TRANSLATECOORDINATES

VLA-UNLOAD

VLA-UNLOADADS

VLA-UNLOADARX

VLA-UNLOADDVB

VLA-UPDATE

VLA-WBLOCK

VLA-ZOOMALL

VLA-ZOOMCENTER

VLA-ZOOMEXTENTS

VLA-ZOOMPICKWINDOW

VLA-ZOOMSCALED

VLA-ZOOMWINDOW

VLAX-ENAME->VLA-OBJECT

VLAX-VLA-OBJECT->ENAME