
###########
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`\ . 
      




