
############################
A3DPDFDataTable3DViewsCreate
############################

.. c:function:: A3DStatus A3DPDFDataTable3DViewsCreate(A3DPDFDocument *pDoc, A3DPDF3DArtwork *p3DArtwork, A3DAsmModelFile *pModelFile, const int iModeFlags, const A3DPDFTable3DViewsData *pTable3DViewsData, A3DPDFDataTable3DViews **ppDataTable)

   .. rst-class:: sig-pretty-signature
   
      | :c:enum:`~A3DStatus` A3DPDFDataTable3DViewsCreate(:c:type:`~A3DPDFDocument`\ * **pDoc**\ , :c:type:`~A3DPDF3DArtwork`\ * **p3DArtwork**\ , :c:type:`~A3DAsmModelFile`\ * **pModelFile**\ , *const* *int* **iModeFlags**\ , *const* :c:struct:`~A3DPDFTable3DViewsData`\ * **pTable3DViewsData**\ , :c:type:`~A3DPDFDataTable3DViews`\ ** **ppDataTable**\ )
   
   Function to create a table for 3D views. 
   
   The table generated is derived from the list obtained with A3DPDF3DArtworkGetViews: it has the same size, and each row has the following columns: 
   
   
   - column 0 is for the index in 3D annot internal views (internally assigned). 
   - column 1 is the internal name of the view (internally assigned). 
   - column 2 is the label of the view to be displayed in carousel buttons (assigned using :c:member:`~A3DPDFTable3DViewsData.m_ppcViewLabels` parameter). 
   - column 3 is the icon name for the view (internally assigned from icons generation for carousel and :c:member:`~A3DPDFTable3DViewsData.m_ppImages` parameter) 
   - additional columns are defined in pTable3DViewsData in m_pDataTableData member.  
   
   **Important:** If iModeFlags is set to :c:macro:`~kA3DPDFTableFor3DViewsComputePosters`\ , the following applies: HOOPS Exchange publish component uses the graphics driver of the user's PC. By default, HOOPS Publish attempts to select the graphics driver in this order: DX11->DX9->OpenGL2->OpenGL. To override the default driver selection, set the A3DPOSTERDRV environment variable to one of the following values: DX11, DX9, OGL2, OGL1 
   
   **Parameters**
   
   
      **pDoc**\ : The Document object to work with. 
   
      **p3DArtwork**\ : Artwork object, used to get view definitions to compute posters. 
   
      **pModelFile**\ : Used to compute posters - must be the modelfile as stored into p3DArtwork. 
   
      **iModeFlags**\ : indicate how views are specified. see :ref:`Field to indicate the options for creating table for 3D views. <group__a3d__pdf___table_for3_d_views_bit>`\ . For information about graphics driver selection for poster generation, please the details section above. 
   
      **pTable3DViewsData**\ : This allows specification of custom data in addition to internal data. Only used if kA3DPDFTableFor3DViewsCustom is specified in iModeFlags. 
   
      **ppDataTable**\ : The DataTable3DViews object created.
   
   
   **Returns**
   
   
      A3D_SUCCESS in case of success or an error code
   
   




