.. _group__a3d__crvellipse:

##############
Elliptic Curve
##############


   2.0



Entity type is :c:enumerator:`~kA3DTypeCrvEllipse`\ .

The canonical form is defined with an :c:struct:`~A3DMiscCartesianTransformationData`\ , its origin being the center of the ellipse and its vector X being the axis corresponding to zero parameter and X radius. The implicit parameterization is an angle in radian in the range [0, 2PI].

:c:struct:`~A3DParameterizationData` allows for reparameterization and trim.


Example of an elliptic arc
==========================


 In this example, the ellipse is in the XY plane (and therefore has an identity transformation), with radii **Rx** and **Ry** and is restricted to the **[ t0 , t1 ]** interval. Assuming ``m_dCoeffA`` is 1.0 and ``m_dCoeffB`` 0.0 (which indicates a parameterization in radians), then t0=0 and t1=PI/2, t0 corresponds to the Cartesian coordinates (Rx,0,0) and t1 to (0,Ry,0). 


   The values of the ``m_dXRadius`` and ``m_dYRadius`` members must be greater than 0. 



**Returns**


   ``A3D_SUCCESS`` on success, or an error code on failure


.. rst-class:: kind-group kind-record

.. rubric:: Structures
   :class: kind-group-title


.. rst-class:: api-xref-list


* :c:struct:`~A3DCrvEllipseData`

.. rst-class:: kind-group kind-function

.. rubric:: Functions
   :class: kind-group-title


.. rst-class:: api-xref-list


* :c:func:`~A3DCrvEllipseGet`
* :c:func:`~A3DCrvEllipseCreate`

.. toctree::
   :maxdepth: 1
   :hidden:

   ../structures/A3DCrvEllipseData
   ../functions/A3DCrvEllipseGet
   ../functions/A3DCrvEllipseCreate


