.. _group__a3d__crvparabola:

###############
Parabolic Curve
###############


   2.0



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

For the canonical definition of this curve and its corresponding parametric equation, see the "SerializeParabola" section of the \ `*PRC Format Specification* <https://docs.techsoft3d.com/exchange/latest/SC2N570-PRC-WD.pdf>`__\ .

The :c:struct:`~A3DParameterizationData` struct specified by the :c:member:`A3DCrvParabolaData::m_sParam <A3DCrvParabolaData.m_sParam>` member specifies reparameterization and trim for the curve.


   In version 2.1 and earlier, values for parameterization named in the :c:member:`A3DCrvParabolaData::m_cParamType <A3DCrvParabolaData.m_cParamType>` member are inverted compared to the corresponding values in the \ `*PRC Format Specification* <https://docs.techsoft3d.com/exchange/latest/SC2N570-PRC-WD.pdf>`__\ .



   2.3



When :c:member:`A3DCrvParabolaData::m_cParamType <A3DCrvParabolaData.m_cParamType>` is set to 1, X value must be taken as **param2/sqrt(16\*focus2+param2)**\ , and Y as corresponding value **2 \* :c:member:`A3DCrvParabolaData::m_dFocal <A3DCrvParabolaData.m_dFocal>` \* sqrt( fabs(X) / :c:member:`A3DCrvParabolaData::m_dFocal <A3DCrvParabolaData.m_dFocal>` )**\ .

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

**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:`~A3DCrvParabolaData`

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

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


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


* :c:func:`~A3DCrvParabolaGet`
* :c:func:`~A3DCrvParabolaCreate`

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

   ../structures/A3DCrvParabolaData
   ../functions/A3DCrvParabolaGet
   ../functions/A3DCrvParabolaCreate


