
############################
A3DMiscReferenceOnTessCreate
############################

.. c:function:: A3DStatus A3DMiscReferenceOnTessCreate(const A3DMiscReferenceOnTessData *pData, A3DMiscReferenceOnTess **ppReferenceOnTess)

   .. rst-class:: sig-pretty-signature
   
      | :c:enum:`~A3DStatus` A3DMiscReferenceOnTessCreate(*const* :c:struct:`~A3DMiscReferenceOnTessData`\ \* **pData**\ , :c:type:`~A3DMiscReferenceOnTess`\ \*\* **ppReferenceOnTess**\ )
   
   Creates an :c:type:`~A3DMiscReferenceOnTess`\ from an :c:struct:`~A3DMiscReferenceOnTessData`\ structure.
   
   
   Edge and Vertex references
   ==========================
   
   If ``m_eTopoItemType``\ is :c:enumerator:`~kA3DTypeTessEdge`\ , m_uiSize must be *3*\ and:
   
   
   - ``m_puiAdditionalIndexes``\ [0] is the face index in ``m_pPolyBrepModel``
   - \ ``m_puiAdditionalIndexes``\ [1] is the loop index in the face
   - ``m_puiAdditionalIndexes``\ [2] is the edge index in the loop
   
   If ``m_eTopoItemType``\ is :c:enumerator:`~kA3DTypeTessVertex`\ , ``m_uiSize``\ must be *4*\ and
   
   
   - ``m_puiAdditionalIndexes``\ [0] is the face index in ``m_pPolyBrepModel``
   - \ ``m_puiAdditionalIndexes``\ [1] is the loop index in the face
   - ``m_puiAdditionalIndexes``\ [2] is the edge index in the loop
   - ``m_puiAdditionalIndexes``\ [3] is the vertex index in the edge
   
   
   **Parameters**
   
   
      **pData**\ : The :c:struct:`~A3DMiscReferenceOnTessData`\ instance to create reference from
   
      **ppReferenceOnTess**\ : A pointer to the resulting :c:type:`~A3DMiscReferenceOnTess`\ entity
   
   
   **Returns**
   
   
      ``A3D_SUCCESS``\ on success, or an error code on failure
   
   




