Class representing a 3d ellipse arc defined by center, normal, majorAxis, majorAxisRadius, minorAxisRadius, startAngle, and endAngle.

  • The majorAxis vector represents half the major axis of the ellipse (that is, from the center point to the start point of the ellipse) and is the zero angle for startAngle and endAngle.
  • Positive angles are counter-clockwise when looking down the normal vector (that is, right-hand rule). A startAngle of 0 and endAngle of 2pi will produce a closed Ellipse.
  • If startAngle is equal to 0 and endAngle is equal to 2 * Math.PI, it represents a full 3d ellipse.

Hierarchy (View Summary)

Constructors

  • Construct an instance of the ellipse arc.

    Parameters

    • center: AcGeVectorLike

      Center point of the ellipse.

    • majorAxisRadius: number

      Major axis radius of the ellipse.

    • minorAxisRadius: number

      Minor axis radius of the ellipse.

    • OptionalstartAngle: number

      Start angle of the ellipse arc in radians.

    • OptionalendAngle: number

      End angle of the ellipse arc in radians.

    • Optionalclockwise: boolean

      The flag Whether the ellipse arc is drawn clockwise. Default is false.

    • Optionalrotation: number

      The rotation angle of the ellipse in radians, counterclockwise from the positive X axis (optional). Default is 0.

    Returns AcGeEllipseArc2d

Properties

_boundingBoxNeedsUpdate: boolean
arcLengthDivisions: number

Accessors

  • get boundingBoxNeedUpdate(): boolean
  • When this is set, it calculates the bounding box of this shape and resets this property to false. Default is false.

    Returns boolean

  • get box(): AcGeBox2d
  • The bounding box of this shape. Because it is a time-consuming operation to calculate the bounding box of one shape, the bounding box value is cached. It will be calculated again lazily once there are any changes to properties of this shape.

    Returns AcGeBox2d

  • get center(): AcGePoint3d
  • Center of the ellipse in 3d space

    Returns AcGePoint3d

  • set center(value: AcGeVectorLike): void
  • Parameters

    Returns void

  • get clockwise(): boolean
  • The flag Whether the ellipse arc is drawn clockwise. Default is false.

    Returns boolean

  • set clockwise(value: boolean): void
  • Parameters

    • value: boolean

    Returns void

  • get closed(): boolean
  • Return true if its start point is identical to its end point. Otherwise, return false.

    Returns boolean

  • get deltaAngle(): number
  • Return angle between endAngle and startAngle in range 0 to 2*PI

    Returns number

  • get endAngle(): number
  • End angle of the ellipse arc in radians in the range -pi to pi.

    Returns number

  • set endAngle(value: number): void
  • Parameters

    • value: number

    Returns void

  • get endPoint(): AcGePoint2d
  • End point of this curve. If the curve is closed, coordinates of start point will be equal to coordinates of end point.

    Returns AcGePoint2d

  • get isLargeArc(): 0 | 1
  • Return true if the arc is a large arc whose delta angle value is greater than PI.

    Returns 0 | 1

  • get length(): number
  • Length of this curve.

    Returns number

  • get majorAxisRadius(): number
  • Major axis radius of the ellipse

    Returns number

  • set majorAxisRadius(value: number): void
  • Parameters

    • value: number

    Returns void

  • get minorAxisRadius(): number
  • Minor axis radius of the ellipse

    Returns number

  • set minorAxisRadius(value: number): void
  • Parameters

    • value: number

    Returns void

  • get rotation(): number
  • The rotation angle of the ellipse in radians, counterclockwise from the positive X axis (optional). Default is 0.

    Returns number

  • set rotation(value: number): void
  • Parameters

    • value: number

    Returns void

  • get startAngle(): number
  • Start angle of the ellipse arc in radians in the range -pi to pi.

    Returns number

  • set startAngle(value: number): void
  • Parameters

    • value: number

    Returns void

  • get startPoint(): AcGePoint2d
  • Start point of this curve. If the curve is closed, coordinates of start point will be equal to coordinates of end point.

    Returns AcGePoint2d

Methods

  • Compute the bounding box of the 3D ellipse arc. The bounding box is defined by its minimum and maximum x, y, and z coordinates.

    Returns AcGeBox2d

    Return bounding box containing the min and max coordinates

  • Get total curve arc length.

    Returns number

    Return total curve arc length.

  • Get list of cumulative segment lengths.

    Parameters

    • Optionaldivisions: number

      Input number of pieces to divide the curve into.

    Returns number[]

    Return list of cumulative segment lengths.

  • Return the point for a given position on the curve according to the arc length.

    Parameters

    • t: number

      Input a position on the curve according to the arc length. Must be in the range [ 0, 1 ].

    Returns AcGePoint2d

    Return the point for a given position on the curve according to the arc length.

  • Return a point for a given position on the curve according to the arc length.

    Parameters

    • u: number

      Input a position on the curve according to the arc length. Must be in the range [0, 1].

    Returns AcGePoint2d

    Return a point for a given position on the curve according to the arc length.

  • Return a set of divisions + 1 points using getPoint(t).

    Parameters

    • Optionaldivisions: number

      Input number of pieces to divide the curve into. Default is 5.

    Returns AcGePoint2d[]

    Return a set of divisions + 1 points using getPoint(t)

  • Return a set of divisions + 1 equi-spaced points using getPointAt(u).

    Parameters

    • Optionaldivisions: number

      Input number of pieces to divide the curve into. Default is 5.

    Returns AcGePoint2d[]

    Return a set of divisions + 1 equi-spaced points using getPointAt(u).

  • Return a unit vector tangent at t. If the derived curve does not implement its tangent derivation, two points a small delta apart will be used to find its gradient which seems to give a reasonable approximation.

    Parameters

    • t: number

      Input a position on the curve. Must be in the range [ 0, 1 ].

    Returns AcGePoint2d

    Return a unit vector tangent at t.

  • Return tangent at a point which is equidistant to the ends of the curve from the point given in getTangent.

    Parameters

    • u: number

      Input a position on the curve according to the arc length. Must be in the range [0, 1].

    Returns AcGePoint2d

    Return tangent at a point which is equidistant to the ends of the curve from the point given in getTangent.

  • Given u in the range (0 .. 1), returns t also in the range ( 0 .. 1 ). u and t can then be used to give you points which are equidistant from the ends of the curve, using getPoint.

    Parameters

    • u: number
    • Optionaldistance: number

    Returns number

  • Transforms the entity by applying the input matrix.

    Parameters

    Returns this