AddEllipticalCylinder Method (ActiveX)

Creates a 3D solid elliptical cylinder whose base is on the XY plane of the WCS, given the Center, MajorRadius, MinorRadius, and Height.

Supported platforms: Windows only

Signature

VBA:

RetVal = object.AddEllipticalCylinder(Center, MajorRadius, MinorRadius, Height)
object

Type: Block, ModelSpace, PaperSpace

The objects this method applies to.

Center

Access: Input-only

Type: Variant (three-element array of doubles)

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

MajorRadius

Access: Input-only

Type: Double

The length of the major radius for the ellipse base. Must be a positive number.

MinorRadius

Access: Input-only

Type: Double

The length of the minor radius for the ellipse base. Must be a positive number.

Height

Access: Input-only

Type: Double

The height of the cylinder. Must be a positive number.

Return Value (RetVal)

Type: 3DSolid

A 3DSolid object as the newly created elliptical cylinder.

Remarks

No additional remarks.

Examples

VBA:

Sub Example_AddEllipticalCylinder()
    ' This example creates an elliptical cylinder in model space.
   
    Dim cylinderObj As Acad3DSolid
    Dim center(0 To 2) As Double
    Dim majorRadius As Double
    Dim minorRadius As Double
    Dim height As Double
    
    ' Define the elliptical cylinder
    center(0) = 0#: center(1) = 0#: center(2) = 0#
    majorRadius = 5#
    minorRadius = 2.5
    height = 10#
    
    ' Create the elliptical cylinder in model space
    Set cylinderObj = ThisDrawing.ModelSpace.AddEllipticalCylinder(center, majorRadius, minorRadius, 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_AddEllipticalCylinder()
    ;; This example creates an elliptical cylinder in model space.
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
       
    ;; Define the elliptical cylinder
    (setq center (vlax-3d-point 0 0 0)
          majorRadius 5
          minorRadius 2.5
          height 10)
    
    ;; Create the elliptical cylinder in model space
    (setq modelSpace (vla-get-ModelSpace doc))
    (setq cylinderObj (vla-AddEllipticalCylinder modelSpace center majorRadius minorRadius height))
  
    ;; 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)
)