.. _group__a3d___project_point_cloud:

###################
Project Point Cloud
###################


   6.1


ProjectPointCloud functions for model file.


   :c:func:`~A3DProjectPointCloud`


**Parameters**


   **uRiBrepModelSize**\ : Number of BrepModels in pRiBrepModel.

   **pRiBrepModel**\ : Array of BRepModels.

   **uPointCloudSize**\ : Number of points in pPointCloudToProject.

   **pPointCloudToProject**\ : Point cloud to project. This point cloud must be in the same coordinate system as the BrepData structures stored in BrepModel.

   **bUseExactComputation**\ : Flag to use exact topology. When this flag is false, the algorithm drops the point cloud on the faceted geometry, otherwise, the exact topology is used.

   **uNbThreads**\ : Number of threads wanted. 0 means non multi-thread. Please avoid setting a number of threads larger than the number of CPU cores.

   **ppProjectedPointCloud**\ : Point cloud projected. ppProjectedPointCloud is automatically allocated by A3DProjectPointCloud. It must be freed with the custom free memory callback.


**Returns**


   ``A3D_SUCCESS``\ on success, or an error code on failure


.. rst-class:: kind-group kind-record

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


.. rst-class:: api-xref-list


* :c:struct:`~A3DProjectedPointCloudData`
* :c:struct:`~A3DProjectPointCloudManagerDataFromRI`
* :c:struct:`~A3DProjectPointCloudOptionsData`

.. rst-class:: kind-group kind-function

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


.. rst-class:: api-xref-list


* :c:func:`~A3DProjectPointCloud`
* :c:func:`~A3DProjectPointCloudManagerCreateFromRI`
* :c:func:`~A3DProjectPointCloudManagerCreateFromModelFile`
* :c:func:`~A3DProjectPointCloudManagerDelete`
* :c:func:`~A3DProjectPointCloud3`

.. toctree::
   :maxdepth: 1
   :hidden:

   ../structures/A3DProjectedPointCloudData
   ../structures/A3DProjectPointCloudManagerDataFromRI
   ../structures/A3DProjectPointCloudOptionsData
   ../functions/A3DProjectPointCloud
   ../functions/A3DProjectPointCloudManagerCreateFromRI
   ../functions/A3DProjectPointCloudManagerCreateFromModelFile
   ../functions/A3DProjectPointCloudManagerDelete
   ../functions/A3DProjectPointCloud3


