AddArc Method (ActiveX)

Creates an arc given the center, radius, start angle, and end angle of the arc.

Supported platforms: Windows only

Signature

VBA:

RetVal = object.AddArc(Center, Radius, StartAngle, EndAngle)
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 point of the arc.

Radius

Access: Input-only

Type: Double

The radius of the arc.

StartAngle, EndAngle

Access: Input-only

Type: Double

The start and end angles, in radians, defining the arc. A start angle greater than an end angle defines a counterclockwise arc.

Return Value (RetVal)

Type: Arc

The newly created Arc object.

Remarks

No additional remarks.

Examples

VBA:

Sub Example_AddArc()
    ' This example creates an arc in model space.
   
    Dim arcObj As AcadArc
    Dim centerPoint(0 To 2) As Double
    Dim radius As Double
    Dim startAngleInDegree As Double
    Dim endAngleInDegree As Double
    
    ' Define the circle
    centerPoint(0) = 0#: centerPoint(1) = 0#: centerPoint(2) = 0#
    radius = 5#
    startAngleInDegree = 10#
    endAngleInDegree = 230#
    
    ' Convert the angles in degrees to angles in radians
    Dim startAngleInRadian As Double
    Dim endAngleInRadian As Double
    startAngleInRadian = startAngleInDegree * 3.141592 / 180#
    endAngleInRadian = endAngleInDegree * 3.141592 / 180#
    
    ' Create the arc object in model space
    Set arcObj = ThisDrawing.ModelSpace.AddArc(centerPoint, radius, startAngleInRadian, endAngleInRadian)
    ZoomAll
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_AddArc()
    ;; This example creates an arc in model space.
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
    
    ;; Define the arc
    (setq centerPoint (vlax-3d-point 0 0 0)  
          radius 5
          startAngleInDegree 10
          endAngleInDegree 230)
    
    ;; Convert the angles in degrees to angles in radians
    (setq startAngleInRadian (/ (* startAngleInDegree 3.141592) 180))
    (setq endAngleInRadian (/ (* endAngleInDegree 3.141592) 180))
    
    ;; Create the arc object in model space
    (setq modelSpace (vla-get-ModelSpace doc))  
    (setq arcObj (vla-AddArc modelSpace centerPoint radius startAngleInRadian endAngleInRadian))
    (vla-ZoomAll acadObj)
)