Open CASCADE Technology
7.4.0
|
Class performs computing of the global inertia properties of geometric object in 3D space by adaptive and non-adaptive 2D Gauss integration algorithms. More...
#include <BRepGProp_Gauss.hxx>
public API | |
enum | BRepGProp_GaussType { Vinert = 0, Sinert } |
Describes types of geometric objects. More... | |
BRepGProp_Gauss (const BRepGProp_GaussType theType) | |
Constructor. More... | |
void | Compute (const BRepGProp_Face &theSurface, const gp_Pnt &theLocation, const Standard_Real theCoeff[], const Standard_Boolean theIsByPoint, Standard_Real &theOutMass, gp_Pnt &theOutGravityCenter, gp_Mat &theOutInertia) |
Computes the global properties of a solid region of 3D space which can be delimited by the surface and point or surface and plane. Surface can be closed. The method is quick and its precision is enough for many cases of analytical surfaces. Non-adaptive 2D Gauss integration with predefined numbers of Gauss points is used. Numbers of points depend on types of surfaces and curves. Error of the computation is not calculated. More... | |
void | Compute (const BRepGProp_Face &theSurface, const gp_Pnt &theLocation, Standard_Real &theOutMass, gp_Pnt &theOutGravityCenter, gp_Mat &theOutInertia) |
Computes the global properties of a surface. Surface can be closed. The method is quick and its precision is enough for many cases of analytical surfaces. Non-adaptive 2D Gauss integration with predefined numbers of Gauss points is used. Numbers of points depend on types of surfaces and curves. Error of the computation is not calculated. More... | |
void | Compute (BRepGProp_Face &theSurface, BRepGProp_Domain &theDomain, const gp_Pnt &theLocation, const Standard_Real theCoeff[], const Standard_Boolean theIsByPoint, Standard_Real &theOutMass, gp_Pnt &theOutGravityCenter, gp_Mat &theOutInertia) |
Computes the global properties of a region of 3D space which can be delimited by the surface and point or surface and plane. Surface can be closed. The method is quick and its precision is enough for many cases of analytical surfaces. Non-adaptive 2D Gauss integration with predefined numbers of Gauss points is used. Numbers of points depend on types of surfaces and curves. Error of the computation is not calculated. More... | |
void | Compute (BRepGProp_Face &theSurface, BRepGProp_Domain &theDomain, const gp_Pnt &theLocation, Standard_Real &theOutMass, gp_Pnt &theOutGravityCenter, gp_Mat &theOutInertia) |
Computes the global properties of a surface. Surface can be closed. The method is quick and its precision is enough for many cases of analytical surfaces. Non-adaptive 2D Gauss integration with predefined numbers of Gauss points is used. Numbers of points depend on types of surfaces and curves. Error of the computation is not calculated. More... | |
Standard_Real | Compute (BRepGProp_Face &theSurface, BRepGProp_Domain &theDomain, const gp_Pnt &theLocation, const Standard_Real theEps, const Standard_Real theCoeff[], const Standard_Boolean theByPoint, Standard_Real &theOutMass, gp_Pnt &theOutGravityCenter, gp_Mat &theOutInertia) |
Computes the global properties of the region of 3D space which can be delimited by the surface and point or surface and plane. Adaptive 2D Gauss integration is used. If Epsilon more than 0.001 then algorithm performs non-adaptive integration. More... | |
Standard_Real | Compute (BRepGProp_Face &theSurface, BRepGProp_Domain &theDomain, const gp_Pnt &theLocation, const Standard_Real theEps, Standard_Real &theOutMass, gp_Pnt &theOutGravityCenter, gp_Mat &theOutInertia) |
Computes the global properties of the face. Adaptive 2D Gauss integration is used. If Epsilon more than 0.001 then algorithm performs non-adaptive integration. More... | |
Class performs computing of the global inertia properties of geometric object in 3D space by adaptive and non-adaptive 2D Gauss integration algorithms.
|
explicit |
Constructor.
void BRepGProp_Gauss::Compute | ( | const BRepGProp_Face & | theSurface, |
const gp_Pnt & | theLocation, | ||
const Standard_Real | theCoeff[], | ||
const Standard_Boolean | theIsByPoint, | ||
Standard_Real & | theOutMass, | ||
gp_Pnt & | theOutGravityCenter, | ||
gp_Mat & | theOutInertia | ||
) |
Computes the global properties of a solid region of 3D space which can be delimited by the surface and point or surface and plane. Surface can be closed. The method is quick and its precision is enough for many cases of analytical surfaces. Non-adaptive 2D Gauss integration with predefined numbers of Gauss points is used. Numbers of points depend on types of surfaces and curves. Error of the computation is not calculated.
theSurface | - bounding surface of the region; |
theLocation | - location of the point or the plane; |
theCoeff | - plane coefficients; |
theIsByPoint | - flag of restricition (point/plane); |
theOutMass[out] | - mass (volume) of region; |
theOutGravityCenter[out] | - garvity center of region; |
theOutInertia[out] | - matrix of inertia; |
void BRepGProp_Gauss::Compute | ( | const BRepGProp_Face & | theSurface, |
const gp_Pnt & | theLocation, | ||
Standard_Real & | theOutMass, | ||
gp_Pnt & | theOutGravityCenter, | ||
gp_Mat & | theOutInertia | ||
) |
Computes the global properties of a surface. Surface can be closed. The method is quick and its precision is enough for many cases of analytical surfaces. Non-adaptive 2D Gauss integration with predefined numbers of Gauss points is used. Numbers of points depend on types of surfaces and curves. Error of the computation is not calculated.
theSurface | - bounding surface of the region; |
theLocation | - surface location; |
theOutMass[out] | - mass (volume) of region; |
theOutGravityCenter[out] | - garvity center of region; |
theOutInertia[out] | - matrix of inertia; |
void BRepGProp_Gauss::Compute | ( | BRepGProp_Face & | theSurface, |
BRepGProp_Domain & | theDomain, | ||
const gp_Pnt & | theLocation, | ||
const Standard_Real | theCoeff[], | ||
const Standard_Boolean | theIsByPoint, | ||
Standard_Real & | theOutMass, | ||
gp_Pnt & | theOutGravityCenter, | ||
gp_Mat & | theOutInertia | ||
) |
Computes the global properties of a region of 3D space which can be delimited by the surface and point or surface and plane. Surface can be closed. The method is quick and its precision is enough for many cases of analytical surfaces. Non-adaptive 2D Gauss integration with predefined numbers of Gauss points is used. Numbers of points depend on types of surfaces and curves. Error of the computation is not calculated.
theSurface | - bounding surface of the region; |
theDomain | - surface boundings; |
theLocation | - location of the point or the plane; |
theCoeff | - plane coefficients; |
theIsByPoint | - flag of restricition (point/plane); |
theOutMass[out] | - mass (volume) of region; |
theOutGravityCenter[out] | - garvity center of region; |
theOutInertia[out] | - matrix of inertia; |
void BRepGProp_Gauss::Compute | ( | BRepGProp_Face & | theSurface, |
BRepGProp_Domain & | theDomain, | ||
const gp_Pnt & | theLocation, | ||
Standard_Real & | theOutMass, | ||
gp_Pnt & | theOutGravityCenter, | ||
gp_Mat & | theOutInertia | ||
) |
Computes the global properties of a surface. Surface can be closed. The method is quick and its precision is enough for many cases of analytical surfaces. Non-adaptive 2D Gauss integration with predefined numbers of Gauss points is used. Numbers of points depend on types of surfaces and curves. Error of the computation is not calculated.
theSurface | - bounding surface of the region; |
theDomain | - surface boundings; |
theLocation | - surface location; |
theOutMass[out] | - mass (volume) of region; |
theOutGravityCenter[out] | - garvity center of region; |
theOutInertia[out] | - matrix of inertia; |
Standard_Real BRepGProp_Gauss::Compute | ( | BRepGProp_Face & | theSurface, |
BRepGProp_Domain & | theDomain, | ||
const gp_Pnt & | theLocation, | ||
const Standard_Real | theEps, | ||
const Standard_Real | theCoeff[], | ||
const Standard_Boolean | theByPoint, | ||
Standard_Real & | theOutMass, | ||
gp_Pnt & | theOutGravityCenter, | ||
gp_Mat & | theOutInertia | ||
) |
Computes the global properties of the region of 3D space which can be delimited by the surface and point or surface and plane. Adaptive 2D Gauss integration is used. If Epsilon more than 0.001 then algorithm performs non-adaptive integration.
theSurface | - bounding surface of the region; |
theDomain | - surface boundings; |
theLocation | - location of the point or the plane; |
theEps | - maximal relative error of computed mass (volume) for face; |
theCoeff | - plane coefficients; |
theIsByPoint | - flag of restricition (point/plane); |
theOutMass[out] | - mass (volume) of region; |
theOutGravityCenter[out] | - garvity center of region; |
theOutInertia[out] | - matrix of inertia; |
Standard_Real BRepGProp_Gauss::Compute | ( | BRepGProp_Face & | theSurface, |
BRepGProp_Domain & | theDomain, | ||
const gp_Pnt & | theLocation, | ||
const Standard_Real | theEps, | ||
Standard_Real & | theOutMass, | ||
gp_Pnt & | theOutGravityCenter, | ||
gp_Mat & | theOutInertia | ||
) |
Computes the global properties of the face. Adaptive 2D Gauss integration is used. If Epsilon more than 0.001 then algorithm performs non-adaptive integration.
theSurface | - bounding surface of the region; |
theDomain | - surface boundings; |
theLocation | - surface location; |
theEps | - maximal relative error of computed mass (square) for face; |
theOutMass[out] | - mass (volume) of region; |
theOutGravityCenter[out] | - garvity center of region; |
theOutInertia[out] | - matrix of inertia; |