
#############################
A3DSimplifyCurveWithAnalytics
#############################

.. c:function:: A3DStatus A3DSimplifyCurveWithAnalytics(const A3DCrvBase *pCurve, A3DDouble dTol, A3DUns32 uNbRecognizedType, A3DEEntityType const *pOptRecognizedType, A3DCrvBase **pAnalyticCurve, A3DEAnalyticType *peAnalyticType)

   .. rst-class:: sig-pretty-signature
   
      | :c:enum:`~A3DStatus` A3DSimplifyCurveWithAnalytics(*const* :c:type:`~A3DCrvBase`\ \* **pCurve**\ , :c:type:`~A3DDouble` **dTol**\ , :c:type:`~A3DUns32` **uNbRecognizedType**\ , :c:enum:`~A3DEEntityType`\ \* **pOptRecognizedType**\ , :c:type:`~A3DCrvBase`\ \*\* **pAnalyticCurve**\ , :c:enum:`~A3DEAnalyticType`\ \* **peAnalyticType**\ )
   
   Function to get curves as analytic (line or circle) according to a certain tolerance.
   
   **Parameters**
   
   
      **pCurve**\ : The input curve.
   
      **dTol**\ : The tolerance.
   
      **uNbRecognizedType**\ : Size of array pOptRecognizedType.
   
      **pOptRecognizedType**\ : Optional type of curve we want to recognize.
   
      **pAnalyticCurve**\ : The new analytic curve.
   
   
   **Returns**
   
   
      ``A3D_SUCCESS``\ on success, or an error code on failure
   
   




