
###############################
A3DProjectPointCloudOptionsData
###############################

.. c:struct:: A3DProjectPointCloudOptionsData

   :c:struct:`~A3DProjectPointCloudOptionsData` structure. 
   
   
      22.2 
   
   
   
   Index
   =====
   
   .. rubric:: Variables
   
   
   .. rst-class:: api-xref-list
   
   
   * :c:member:`~A3DProjectPointCloudOptionsData.m_bUseExactComputation`
   * :c:member:`~A3DProjectPointCloudOptionsData.m_uNbThreads`
   * :c:member:`~A3DProjectPointCloudOptionsData.m_dInsidePointEdgeTolerance`
   * :c:member:`~A3DProjectPointCloudOptionsData.m_bUseProbe`
   * :c:member:`~A3DProjectPointCloudOptionsData.m_dProbeRadius`
   * :c:member:`~A3DProjectPointCloudOptionsData.m_bPreferFaceTowardScan`
   * :c:member:`~A3DProjectPointCloudOptionsData.m_dTolForPreferFaceTowardScan`
   
   



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

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


.. c:member:: A3DBool A3DProjectPointCloudOptionsData.m_bUseExactComputation

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DBool`
      
      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. 
      



.. c:member:: A3DUns32 A3DProjectPointCloudOptionsData.m_uNbThreads

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DUns32`
      
      Number of threads wanted. 
      
      0 means non multi-threaded. Please avoid setting a number of threads larger than the number of CPU cores. 
      



.. c:member:: A3DDouble A3DProjectPointCloudOptionsData.m_dInsidePointEdgeTolerance

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DDouble`
      
      Tolerance used to check if the projection point which is inside a face is on edge. 
      
      If not set (0.), default value is 1.e-3. Must be positive. 
      



.. c:member:: A3DBool A3DProjectPointCloudOptionsData.m_bUseProbe

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DBool`
      
      Considers solutions on a sphere centered on the point to project. 
      
      Default value is A3D_FALSE. (inactive). 
      



.. c:member:: A3DDouble A3DProjectPointCloudOptionsData.m_dProbeRadius

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DDouble`
      
      Radius of the probe. 
      
      Must be set if m_bUseProbe is set to A3D_TRUE. Must be positive and greater than zero (>0.) . 
      



.. c:member:: A3DBool A3DProjectPointCloudOptionsData.m_bPreferFaceTowardScan

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DBool`
      
      Optional. 
      
      Prefer solution on face with normal at the projected point is pointing toward from the scanner when there are two solutions on different faces at the m_dTolForPreferFaceTowardScan distance. Default value is false (inactive). If m_bPreferFaceTowardScan is set to A3D_TRUE, and m_bUseProbe is set to A3D_FALSE, input data points of A3DProjectPointCloud3 function must contain normal points. If m_bPreferFaceTowardScan is set to A3D_TRUE, and m_bUseProbe is set to A3D_TRUE, input data points of A3DProjectPointCloud3 must only contain points. In this last case, normals are defined like direction from projected point to center of probe (input point). 
      



.. c:member:: A3DDouble A3DProjectPointCloudOptionsData.m_dTolForPreferFaceTowardScan

      .. rst-class:: sig-pretty-signature
      
         | :c:type:`~A3DDouble`
      
      If m_bPreferFaceTowardScan is A3D_TRUE, and projection points are under this tolerance value, we prefer the face toward solution. 
      
      If projection point is outside this tolerance the nearest solution is returned. Default is 0. 
      




