
###########
A3DMeshData
###########

.. c:struct:: A3DMeshData

   Representation of a mesh obtained using :c:func:`~A3DRiComputeMesh`\ .
   
   
      24.0
   
   
   This structure provides a consistent way to access mesh information. Use :c:func:`~A3DRiComputeMesh`\ to populate this structure from an :c:type:`~A3DRiRepresentationItem`\ entity.
   
   A fully detailed version of the structure layout and usage is presented in
   
   
   ::
   
      embed:rst:inline :doc:`/guide/geometry/using_a3d_mesh_data`
   
   .
   
   
      :c:func:`~A3DRiComputeMesh`
   
   
   
   Index
   =====
   
   .. rubric:: Variables
   
   
   .. rst-class:: api-xref-list
   
   
   * :c:member:`~A3DMeshData.m_uiCoordSize`
   * :c:member:`~A3DMeshData.m_pdCoords`
   * :c:member:`~A3DMeshData.m_uiNormalSize`
   * :c:member:`~A3DMeshData.m_pdNormals`
   * :c:member:`~A3DMeshData.m_uiTextureUVSize`
   * :c:member:`~A3DMeshData.m_pdTextureUV`
   * :c:member:`~A3DMeshData.m_uiFaceSize`
   * :c:member:`~A3DMeshData.m_puiTriangleCountPerFace`
   * :c:member:`~A3DMeshData.m_puiVertexIndicesPerFace`
   * :c:member:`~A3DMeshData.m_puiTextureCountPerFace`
   * :c:member:`~A3DMeshData.m_puiTextureUVIndicesPerFace`
   * :c:member:`~A3DMeshData.m_uiStyleIndex`
   * :c:member:`~A3DMeshData.m_puiStyleIndexPerFace`
   
   



.. rst-class:: kind-group kind-variable

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


.. c:member:: A3DUns32 A3DMeshData.m_uiCoordSize

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DUns32`
      
      Number of elements in :c:member:`m_pdCoords <A3DMeshData.m_pdCoords>`\ .
      
      Corresponds to three times the number of vertices.
      



.. c:member:: A3DDouble* A3DMeshData.m_pdCoords

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DDouble`\ \*
      
      Array of vertex coordinates.
      
      Stored as a sequence of{x, y, z}triplets.
      



.. c:member:: A3DUns32 A3DMeshData.m_uiNormalSize

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DUns32`
      
      Number of elements in :c:member:`m_pdNormals <A3DMeshData.m_pdNormals>`\ .
      
      Corresponds to three times the number of vertices.
      



.. c:member:: A3DDouble* A3DMeshData.m_pdNormals

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DDouble`\ \*
      
      Array of normal coordinates.
      
      Stored as a sequence of{x, y, z}triplets.
      



.. c:member:: A3DUns32 A3DMeshData.m_uiTextureUVSize

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DUns32`
      
      The number of elements in :c:member:`m_pdTextureUV <A3DMeshData.m_pdTextureUV>`\ .
      
      Corresponds to two times the number of texture coordinates.
      



.. c:member:: A3DDouble* A3DMeshData.m_pdTextureUV

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DDouble`\ \*
      
      Array of UV-coordinates.
      
      Stored as a sequence of ``{u, v}``\ pairs.
      



.. c:member:: A3DUns32 A3DMeshData.m_uiFaceSize

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DUns32`
      
      Total number of faces in the mesh.
      
      Determines the size of various other fields in the structure.
      



.. c:member:: A3DUns32* A3DMeshData.m_puiTriangleCountPerFace

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DUns32`\ \*
      
      Array containing the number of triangles per face.
      
      Size is :c:member:`m_uiFaceSize <A3DMeshData.m_uiFaceSize>`\ .
      



.. c:member:: A3DUns32* A3DMeshData.m_puiVertexIndicesPerFace

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DUns32`\ \*
      
      Array of vertex indices.
      
      Indices are ordered per face and per triangle. Size depends on :c:member:`m_puiTriangleCountPerFace <A3DMeshData.m_puiTriangleCountPerFace>`\ .
      



.. c:member:: A3DUns32* A3DMeshData.m_puiTextureCountPerFace

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DUns32`\ \*
      
      Array of texture counts for each face.
      
      Size is :c:member:`m_uiFaceSize <A3DMeshData.m_uiFaceSize>`\ .
      



.. c:member:: A3DUns32* A3DMeshData.m_puiTextureUVIndicesPerFace

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DUns32`\ \*
      
      Array of texture indices.
      
      Indices are ordered per face and per triangle. Size depends on :c:member:`m_puiTriangleCountPerFace <A3DMeshData.m_puiTriangleCountPerFace>`\ and :c:member:`m_puiTextureCountPerFace <A3DMeshData.m_puiTextureCountPerFace>`\ .
      



.. c:member:: A3DUns32 A3DMeshData.m_uiStyleIndex

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DUns32`
      
      The style index used for the whole mesh.
      
      Used with :c:func:`~A3DGlobalGetGraphStyleData`\ .
      



.. c:member:: A3DUns32* A3DMeshData.m_puiStyleIndexPerFace

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DUns32`\ \*
      
      Array of style indices set per face.
      
      Used with :c:func:`~A3DGlobalGetGraphStyleData`\ .
      




