AddCylinder Method (ActiveX)

Creates a 3D solid cylinder whose base is on the XY plane of the WCS.

Supported platforms: Windows only

Signature

VBA:

RetVal = object.AddCylinder(Center, Radius, Height)
object

Type: Block, ModelSpace, PaperSpace

The objects this method applies to.

Center

Access: Input-only

Type: Variant (three-element array of doubles)

A 3D WCS coordinates specifying the center of the bounding box.

Radius

Access: Input-only

Type: Double

The cylinder radius. Must be a positive number.

Height

Access: Input-only

Type: Double

The cylinder height. Must be a positive number.

Return Value (RetVal)

Type: 3DSolid

A 3DSolid object as the newly created cylinder.

Remarks

No additional remarks.

Examples

VBA:

Sub Example_AddCylinder()
    ' This example creates a cylinder in model space.
    
    Dim cylinderObj As Acad3DSolid
    Dim radius As Double
    Dim center(0 To 2) As Double
    Dim height As Double
    
    ' Define the cylinder
    center(0) = 0#: center(1) = 0#: center(2) = 0#
    radius = 5#
    height = 20#
    
    ' Create the Cylinder (3DSolid) object in model space
    Set cylinderObj = ThisDrawing.ModelSpace.AddCylinder(center, radius, height)
    
    ' Change the viewing direction of the viewport to better see the cylinder
    Dim NewDirection(0 To 2) As Double
    NewDirection(0) = -1: NewDirection(1) = -1: NewDirection(2) = 1
    ThisDrawing.ActiveViewport.direction = NewDirection
    ThisDrawing.ActiveViewport = ThisDrawing.ActiveViewport
    ZoomAll
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_AddCylinder()
    ;; This example creates a cylinder in model space.
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
    
    ;; Define the cylinder
    (setq center (vlax-3d-point 0 0 0)
          cylRadius 5
	         cylHeight 20)
    
    ;; Create the Cylinder (3DSolid) object in model space
    (setq modelSpace (vla-get-ModelSpace doc))
    (setq cylinderObj (vla-AddCylinder modelSpace center cylRadius cylHeight))
    
    ;; Change the viewing direction of the viewport to better see the cylinder
    (setq NewDirection (vlax-3d-point -1 -1 1))
    (setq activeViewport (vla-get-ActiveViewport doc))
    (vla-put-Direction activeViewport NewDirection)
    (vla-put-ActiveViewport doc activeViewport)
    (vla-ZoomAll acadObj)
)