StartParameter Property (ActiveX)

Specifies the start parameter for an ellipse.

Supported platforms: Windows only

Signature

VBA:

object.StartParameter
object

Type: Ellipse

The object this property applies to.

Property Value

Read-only: No

Type: Double

The valid range is 0 to 2*PI.

Remarks

The start and end parameters of the ellipse are calculated based on the following equation:

P(Theta) = A * cos(Theta) + B * sin(Theta)

where A and B are the semimajor and -minor axes respectively.

For example, if your start angle is Theta1, the corresponding start parameter is P(Theta1) calculated based on the above formula. Similarly, if your end angle is Theta2, the corresponding end parameter is P(Theta2) calculated based on the above formula.

You can use either angle or parameter to create the ellipse.

Examples

VBA:

Sub Example_StartParameter()
    ' This example creates an ellipse and enters the start and
    ' end parameters to create an elliptical arc.
    Dim ellObj As AcadEllipse
    Dim majAxis(0 To 2) As Double
    Dim center(0 To 2) As Double
    Dim radRatio As Double
    
    ' Create an ellipse in model space
    center(0) = 5#: center(1) = 5#: center(2) = 0#
    majAxis(0) = 10: majAxis(1) = 20#: majAxis(2) = 0#
    radRatio = 0.3
    Set ellObj = ThisDrawing.ModelSpace.AddEllipse(center, majAxis, radRatio)
    
    ' Enter a start parameter of 1.57, and an end parameter of 6.28
    ellObj.StartParameter = 1.57
    ellObj.EndParameter = 6.28
    ZoomAll
    
    ' Find the start and end parameters for the ellipse
    MsgBox "The ellipse has a start parameter of " & ellObj.StartParameter & " and an end parameter of " & ellObj.EndParameter, vbInformation, "StartParameter Example"
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_StartParameter()
    ;; This example creates an ellipse and enters the start and
    ;; end parameters to create an elliptical arc.
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
    
    ;; Create an ellipse in model space
    (setq center (vlax-3d-point 5 5 0)
          majAxis (vlax-3d-point 10 20 0)
          radRatio 0.3)
  
    (setq modelSpace (vla-get-ModelSpace doc))  
    (setq ellObj (vla-AddEllipse modelSpace center majAxis radRatio))
    
    ;; Enter a start parameter of 1.57, and an end parameter of 6.28
    (vla-put-StartParameter ellObj 1.57)
    (vla-put-EndParameter ellObj 6.28)
    (vla-ZoomAll acadObj)
    
    ;; Find the start and end parameters for the ellipse
    (alert (strcat "The ellipse has a start parameter of " (rtos (vla-get-StartParameter ellObj) 2) " and an end parameter of " (rtos (vla-get-EndParameter ellObj) 2)))
)