AddTorus Method (ActiveX)

Creates a torus at the given location.

Supported platforms: Windows only

Signature

VBA:

RetVal = object.AddTorus(Center, TorusRadius, TubeRadius)
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 in the drawing around which the torus is centered.

TorusRadius

Access: Input-only

Type: Double

The distance from the center of the torus to the center of the tube. Must be a positive number.

TubeRadius

Access: Input-only

Type: Double

The radius of the tube. Must be a positive number.

Return Value (RetVal)

Type: 3DSolid

A 3DSolid object as the newly created torus.

Remarks

No additional remarks.

Examples

VBA:

Sub Example_AddTorus()
    ' This example creates a torus in model space.
    
    Dim torusObj As Acad3DSolid
    Dim centerPoint(0 To 2) As Double
    Dim torusRadius As Double
    Dim tubeRadius As Double
    
    ' Define the torus
    centerPoint(0) = 5: centerPoint(1) = 5: centerPoint(2) = 0
    torusRadius = 15
    tubeRadius = 5
    
    ' Create the torus
    Set torusObj = ThisDrawing.ModelSpace.AddTorus(centerPoint, torusRadius, tubeRadius)
            
     ' Change the viewing direction of the viewport
    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_AddTorus()
    ;; This example creates a torus in model space.
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
    
    ;; Define the torus
    (setq centerPoint (vlax-3d-point 5 5 0)
          torusRadius 15
          tubeRadius 5)
    
    ;; Create the torus
    (setq modelSpace (vla-get-ModelSpace doc))
    (setq torusObj (vla-AddTorus modelSpace centerPoint torusRadius tubeRadius))
            
    ;; Change the viewing direction of the viewport
    (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)
)