
####################################
A3DComputePolyBrepPhysicalProperties
####################################

.. c:function:: A3DStatus A3DComputePolyBrepPhysicalProperties(const A3DRiPolyBrepModel *p, const A3DVector3dData *psScale, A3DPhysicalPropertiesData *psPhysicalPropertiesData)

   .. rst-class:: sig-pretty-signature
   
      | :c:enum:`~A3DStatus` A3DComputePolyBrepPhysicalProperties(*const* :c:type:`~A3DRiPolyBrepModel`\ \* **p**\ , *const* :c:struct:`~A3DVector3dData`\ \* **psScale**\ , :c:struct:`~A3DPhysicalPropertiesData`\ \* **psPhysicalPropertiesData**\ )
   
   Function to compute the physical properties (surface area, volume and gravity center, and since 11.2 the surfacic gravity center and the surfacic and volumic inertia matrix) of a PolyBrepModel.
   
   An optional scale, psScale, can be used. It can be either uniform or not. Physical properties will be computed after having scaled the geometrical data in the :c:type:`~A3DRiPolyBrepModel`\ .
   
   Note that since 11.2, the input psPhysicalPropertiesData structure now has a couple of input parameters with which precision can be adjusted, in addition to the new return values.
   
   The inertia matrices are provided relative to the computed gravity centers, with respect to the global X, Y and Z directions.
   
   **Parameters**
   
   
      **p**\ : The input poly B-rep model.
   
      **psScale**\ : The optional scale.
   
      **psPhysicalPropertiesData**\ : The wanted physical properties.
   
   
   **Returns**
   
   
      ``A3D_SUCCESS``\ on success, or an error code on failure
   
   




