CATFmtModelInterfaces CATFmtGeometricalEngine
Usage: you can derive this class.
public class CATFmtGeometricalEngine
Object that handles necessary informations about a finite element in order
to compute a quality criterion.
See .
Constructor and Destructor Index
- o
CATFmtGeometricalEngine(CATIFmtConnectivity*)
- Constructs a geometrical engine corresponding to a given connectivity.
- o
~CATFmtGeometricalEngine()
- Destructor.
Method Index
- o
ComputeArea(int,int,double&)
- Compute the element's face area (with intermediate nodes).
- o
ComputeAxis(double[3],double[3][3])
- Compute element's axis
- o
ComputeEdgeAxis(CATMathAxis*&,int,int,double*)
- Compute element's edge axis
- o
ComputeEdgeAxis(CATMathAxis*&,int,double*,double*)
- Compute element's edge axis
- o
ComputeEdgeInteriorAngle(int,double&)
- Compute element's edge angle
Angle is computed between element faces belonging to edge
- o
ComputeEdgeIsopar(double*,int,double*)
- Compute element's edge axis
- o
ComputeEdgePosition(double*,int,double*)
- Compute position on element's edge
- o
ComputeFaceAxis(CATMathAxis*&,int,double*)
- Compute element's face axis
- o
ComputeFaceAxis(double[],double[][3],int,double*)
- Compute element's face axis
- o
ComputeFaceAxis(double*,double*,double*,int,double*)
- Compute element's face axis
- o
ComputeFaceCoordinates(int,double[][3],double[],int&,double[][3])
- Compute element's face local coordinates
- o
ComputeFaceIsopar(double*,double*,double*,int,double*)
- Compute element's face axis
- o
ComputeFaceJacobian(int,double[][3],double[][2],double[][2],double&)
- Compute the element's face jacobian
- o
ComputeFaceNormal(int,int,double[3])
- Compute element's face normal
- o
ComputeFaceParameters(int,double[],double[])
- Compute parameters on elemeent's face
- o
ComputeFacePosition(double*,int,double*)
- Compute position on element's face
- o
ComputeFacePosition(int,double[],double[])
- Compute position on element's face
- o
ComputeFaceProjection(int,double[3],double[3],double[3],int&)
- Compute projection of point on element's face
- o
ComputeIsopar(double[][3],double*)
- Compute element's axis
- o
ComputeJacobian(double*,double[][3],double*,double&)
- Compute the element's jacobian
- o
ComputeLength(int,int,double&)
- Compute the element's edge length (with intermediate nodes).
- o
ComputeMinBoxDistance(double[])
- Get the minimum distance between a point and the element's bounding box
- o
ComputePosition(double*,double*)
- Compute position on element
- o
ComputeShrink(float[][3],float)
- Compute nodes coordinates with shrink
- o
GetBox()
- Get the bounding box of element
- o
GetCenter()
- Get element's center
- o
GetCenter(double*&)
- Get the element's center.
- o
GetConnectivity()
- Get the connectivity associated with.
- o
GetCoordinates()
- Get nodes coordinates
- o
GetCoordinates(int)
- Get node coordinates
- o
GetDimension()
- Get the dimension of the connectivity.
- o
GetEdgeSizes()
- Get the element's edges size (ignore intermediate nodes).
- o
GetEdges()
- Get element's edges (ignore intermediate nodes).
- o
GetMainAreas(double*&)
- Get the element's faces area (ignore intermediate nodes).
- o
GetMainEdge(int,CATMathVector&)
- Get the element's edge (ignore intermediate nodes).
- o
GetMainLengths(double*&)
- Get element's edges length (ignore intermediate nodes).
- o
GetMainNormal(int,CATMathVector&)
- Get the element's face normal (ignore intermediate nodes).
- o
GetMaxEdge()
- Get the element's maximum edge length.
- o
GetMinEdge()
- Get the element's minimum edge length.
- o
GetMinHeight(double&)
- Get the element's minimum height.
- o
GetNodesInteriorAngles(int,int&,double*&)
- Compute element's nodes angle
Angle is computed between two consecutive edges of element's face
- o
GetNormals(int)
- Get the element's faces normal (ignore intermediate nodes).
- o
GetVolume(double&,int)
- Get the element's volume.
- o
Init(double* const[])
- Initialize the geometrical engine with the geometry of a finite element.
- o
Init(CATFmtElement const* const)
- Initialize the geometrical engine with the geometry of a finite element.
- o
SetCoordinates(int,double[])
- Set coordinates of specified node.
Data Member Index
- o
_FHeight
-
- o
_MinHeight
-
Constructor and Destructor
o CATFmtGeometricalEngine
public CATFmtGeometricalEngine( | const | iConnectivity) |
-
Constructs a geometrical engine corresponding to a given connectivity.
- Parameters:
-
- iConnectivity
- Connectivity to be associated with.
See
.
o ~CATFmtGeometricalEngine
public virtual ~CATFmtGeometricalEngine( | ) |
-
Destructor.
Methods
o ComputeArea
public virtual ComputeArea( | const | iNuFace, |
| const | iIntegrationType, |
| | oArea) |
-
Compute the element's face area (with intermediate nodes).
- Parameters:
-
- iNuFace
- Local number of face, between 0 to NbFaces-1.
- iIntegrationType
- Type of numeric integration ( gauss scheme point of integration ).
Legal values:
- 0
- Center.
- 1
- Low precision.
- 2
- Medium precision.
- 3
- High precision.
- oArea
- Area value.
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeAxis
-
public virtual ComputeAxis( | | oOrigin, |
| | oDirections) |
-
Compute element's axis
- Parameters:
-
- oOrigin
- Origin coordinates (on element center)
- oDirections
- Axis three vectors
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeEdgeAxis
-
public virtual ComputeEdgeAxis( | | ioAxis, |
| | iNuEdge | =0 , |
| | iNuFace | =-1 , |
| const | iParams | =NULL ) |
-
Compute element's edge axis
- Parameters:
-
- ioAxis
- Mathematical axis in dimension 3
See
.
- iNuEdge
- Local number of edge, between 0 to NbEdges-1.
- iNuFace
- Local number of face, between 0 to NbFaces-1.
- iParams
- Parameters on edge
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeEdgeAxis
-
public virtual ComputeEdgeAxis( | | ioAxis, |
| | iNuEdge, |
| | iNormal, |
| const | iParams | =NULL) |
-
Compute element's edge axis
- Parameters:
-
- ioAxis
- Mathematical axis in dimension 3
See
.
- iNuEdge
- Local number of edge, between 0 to NbEdges-1.
- iNormal
- Axis vector
- iParams
- Parameters on edge
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeEdgeInteriorAngle
-
public virtual ComputeEdgeInteriorAngle( | | iNuEdge, |
| | Value) |
-
Compute element's edge angle
Angle is computed between element faces belonging to edge
- Parameters:
-
- iNuEdge
- Local number of edge, between 0 to NbEdges-1.
- Value
- The angle value.
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeEdgeIsopar
-
public virtual ComputeEdgeIsopar( | | oDirU, |
| | iNuEdge | =0, |
| const | iDerivates | =NULL) |
-
Compute element's edge axis
- Parameters:
-
- oDirU
- Axis vector U
- iNuEdge
- Local number of edge, between 0 to NbEdges-1.
- iDerivates
- Shape functions derivates
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeEdgePosition
-
public virtual ComputeEdgePosition( | | oPosition, |
| | iNuEdge | =0, |
| const | iFunctions | =NULL ) |
-
Compute position on element's edge
- Parameters:
-
- oPosition
- Coordinates of position
- iNuEdge
- Local number of edge, between 0 to NbEdges-1.
- iFunctions
- Shape functions
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeFaceAxis
-
public ComputeFaceAxis( | | ioAxis, |
| | iNuFace | =0 , |
| const | iParams | =NULL ) |
-
Compute element's face axis
- Parameters:
-
- ioAxis
- Mathematical axis in dimension 3
See
.
- iNuFace
- Local number of face, between 0 to NbFaces-1.
- iParams
- Parameters on face
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeFaceAxis
-
public virtual ComputeFaceAxis( | | oOrigin, |
| | oDirections, |
| | iNuFace | =0 , |
| const | iParams | =NULL ) |
-
Compute element's face axis
- Parameters:
-
- oOrigin
- Origin coordinates
- oDirections
- Axis three vectors
- iNuFace
- Local number of face, between 0 to NbFaces-1.
- iParams
- Parameters on face
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeFaceAxis
-
public virtual ComputeFaceAxis( | | oDirU, |
| | oDirV, |
| | oDirW, |
| | iNuFace | =0, |
| const | iDerivates | =NULL) |
-
Compute element's face axis
- Parameters:
-
- oDirU
- Axis vector U
- oDirV
- Axis vector V
- oDirW
- Axis vector W
- iNuFace
- Local number of face, between 0 to NbFaces-1.
- Derivates
- Shape functions derivates
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeFaceCoordinates
-
public virtual ComputeFaceCoordinates( | | iNuFace, |
| const | iDirections, |
| const | iOrigin, |
| | oNbNodesOfFace, |
| | oFaceCoor) |
-
Compute element's face local coordinates
- Parameters:
-
- iNuFace
- Local number of face, between 0 to NbFaces-1.
- iDirections
- Axis three vectors
- iOrigin
- Coordinates of reference position
- oNbNodesOfFace
- Number of nodes of face
- oFaceCoor
- Array containing nodes local coordinates
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeFaceIsopar
-
public virtual ComputeFaceIsopar( | | oDirU, |
| | oDirV, |
| | oDirW, |
| | iNuFace | =0, |
| const | iDerivates | =NULL) |
-
Compute element's face axis
- Parameters:
-
- oDirU
- Axis vector U
- oDirV
- Axis vector V
- oDirW
- Axis vector W
- iNuFace
- Local number of face, between 0 to NbFaces-1.
- iDerivates
- Shape functions derivates
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeFaceJacobian
-
public virtual ComputeFaceJacobian( | | iNbNodes, |
| const | iCoor, |
| const | iDerivates, |
| | oJacobian, |
| | oDet) |
-
Compute the element's face jacobian
- Parameters:
-
- iNbNodes
- Number of nodes of face
- iCoor
- Nodes coordinates of face
- iDerivates
- Shape functions derivates
- oJacobian
- Jacobian matrix
- oDet
- Jacobian determinant
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeFaceNormal
-
public virtual ComputeFaceNormal( | const | iNuFace, |
| const | iNuNode, |
| | oNormal) |
-
Compute element's face normal
- Parameters:
-
- iNuFace
- Local number of face, between 0 to NbFaces-1.
- iNuNode
- Local number of node, between 0 to NbNodes-1.
- oNormal
- Normalized vector
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeFaceParameters
-
public virtual ComputeFaceParameters( | | iNuFace, |
| const | iPosition, |
| | oParams) |
-
Compute parameters on elemeent's face
- Parameters:
-
- iNuFace
- Local number of face, between 0 to NbFaces-1.
- iPosition
- Coordinates of position
- oParams
- Parameters value
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeFacePosition
-
public virtual ComputeFacePosition( | | oPosition, |
| | iNuFace | =0, |
| const | iFunctions | =NULL ) |
-
Compute position on element's face
- Parameters:
-
- oPosition
- Coordinates of position
- iNuFace
- Local number of face, between 0 to NbFaces-1.
- Functions
- Shape functions
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeFacePosition
-
public virtual ComputeFacePosition( | | iNuFace, |
| | iParams, |
| | oPosition) |
-
Compute position on element's face
- Parameters:
-
- iNuFace
- Local number of face, between 0 to NbFaces-1.
- iParams
- Parameters value
- oPosition
- Coordinates of position
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeFaceProjection
-
public virtual ComputeFaceProjection( | | iNuFace, |
| const | iPoint, |
| | oProjection, |
| | oDistance2, |
| | oLocation) |
-
Compute projection of point on element's face
- Parameters:
-
- iNuFace
- Local number of face, between 0 to NbFaces-1.
- iPoint
- Coordinates of point to project.
- oProjection
- Coordinates of projected point.
- oDistance2
- oDistance2[0] square distance of projected point to face
oDistance2[1] square distance of projected point to face: normal component
oDistance2[2] square distance of projected point to face: lateral component
- oLocation
- Projection result status.
Legal values:
- 0
- the projected point is inside the face.
- !=0
- the projected point is outside the face or on face boundary.
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeIsopar
-
public virtual ComputeIsopar( | | oDirections, |
| const | iDerivates | =NULL) |
-
Compute element's axis
- Parameters:
-
- Directions
- Axis three vectors
- Derivates
- Shape functions derivates
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeJacobian
-
public virtual ComputeJacobian( | const | iDerivates, |
| const | iDirections, |
| | oJacobian, |
| | oDet) |
-
Compute the element's jacobian
- Parameters:
-
- iDerivates
- Shape functions derivates
- iDirections
- Axis three vectors
- oJacobian
- Jacobian matrix
- oDet
- Jacobian determinant
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeLength
-
public virtual ComputeLength( | const | iNuEdge, |
| const | iIntegrationType, |
| | oLength) |
-
Compute the element's edge length (with intermediate nodes).
- Parameters:
-
- iNuEdge
- Local number of edge, between 0 to NbEdges-1.
- iIntegrationType
- Type of numeric integration ( gauss scheme point of integration ).
Legal values:
- 0
- Center.
- 1
- Low precision.
- 2
- Medium precision.
- 3
- High precision.
- oLength
- Length value.
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeMinBoxDistance
-
public ComputeMinBoxDistance( | const | iXYZ) |
-
Get the minimum distance between a point and the element's bounding box
- Parameters:
-
- iXYZ
- Point coordinates.
- Returns:
- The distance between a point and the bounding box
- o ComputePosition
-
public virtual ComputePosition( | | oPosition, |
| const | iFunctions) |
-
Compute position on element
- Parameters:
-
- oPosition
- Coordinates of position
- iFunctions
- Shape functions
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o ComputeShrink
-
public virtual ComputeShrink( | | oCoordinates, |
| const | iShrink | =0.95 ) |
-
Compute nodes coordinates with shrink
- Parameters:
-
- oCoordinates
- Array containing the nodes coordinates
- iShrink
- Value of shrink parameter.
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o GetBox
-
-
Get the bounding box of element
- Returns:
- A pointer to the array containing box coordinates
- o GetCenter
-
-
Get element's center
- Returns:
- A pointer to the array containing coordinates
- o GetCenter
-
public GetCenter( | const | oCenter) |
-
Get the element's center.
- Parameters:
-
- oCenter
- A pointer to the array containing coordinates
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o GetConnectivity
-
-
Get the connectivity associated with.
- Returns:
- A finite element connectivity.
See
.
- o GetCoordinates
-
-
Get nodes coordinates
- Returns:
- A pointer to an array containing coordinates in the following order: X0, Y0, Z0, X1, Y1, Z1, ...
- o GetCoordinates
-
public GetCoordinates( | const | iNuNode) |
-
Get node coordinates
- Parameters:
-
- iNuNode
- Local number of node, between 0 to NbNodes-1
- Returns:
- A pointer to the array containing coordinates in the following order: X, Y, Z ...
- o GetDimension
-
-
Get the dimension of the connectivity.
- Returns:
- Dimension value.
Legal values:
- 1
- 1D element.
- 2
- 2D element.
- 3
- 3D element.
- o GetEdgeSizes
-
-
Get the element's edges size (ignore intermediate nodes).
- Returns:
- A pointer to an array of edges size table (0 to NbEdges-1).
- o GetEdges
-
-
Get element's edges (ignore intermediate nodes).
- Returns:
- A pointer to an array of element's edges
- o GetMainAreas
-
public GetMainAreas( | const | oAreas) |
-
Get the element's faces area (ignore intermediate nodes).
- Parameters:
-
- oAreas
- Pointer to array of face area table (0 to NbFaces-1).
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o GetMainEdge
-
public GetMainEdge( | const | iNuEdge, |
| | oEdge) |
-
Get the element's edge (ignore intermediate nodes).
- Parameters:
-
- iNuEdge
- Local number of edge, between 0 to NbEdges-1.
- oEdge
- Vector between first and second node of the edge.
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o GetMainLengths
-
public GetMainLengths( | const | oLengths) |
-
Get element's edges length (ignore intermediate nodes).
- Parameters:
-
- oLengths
- Pointer to an array of edge length table (0 to NbEdges-1).
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o GetMainNormal
-
public GetMainNormal( | const | iNuFace, |
| | oNormal) |
-
Get the element's face normal (ignore intermediate nodes).
- Parameters:
-
- iNuFace
- Local number of face, between 0 to NbFaces-1.
- oNormal
- Normal vector (0 for 1D element).
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o GetMaxEdge
-
public virtual GetMaxEdge( | ) |
-
Get the element's maximum edge length.
- Returns:
- Maximum value of edges length.
- o GetMinEdge
-
public virtual GetMinEdge( | ) |
-
Get the element's minimum edge length.
- Returns:
- Minimum value of edges length.
- o GetMinHeight
-
public virtual GetMinHeight( | | oHeight) |
-
Get the element's minimum height.
- Parameters:
-
- oHeight
- Minimum value of element's heights.
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o GetNodesInteriorAngles
-
public GetNodesInteriorAngles( | | iNuFace, |
| | oNbNodesOfFace, |
| const | oAngles) |
-
Compute element's nodes angle
Angle is computed between two consecutive edges of element's face
- Parameters:
-
- iNuFace
- Local number of face, between 0 to NbEdges-1.
- oNbNodesOfFace
- Number of nodes of face
- oAngles
- The pointer to an array containing the angle values.
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o GetNormals
-
public GetNormals( | | iNormalize | =0 ) |
-
Get the element's faces normal (ignore intermediate nodes).
- Returns:
- A pointer to an array of faces normal table (0 to _NbFaces-1)
- o GetVolume
-
public virtual GetVolume( | | oValue, |
| const | iIntegrationType | =0 ) |
-
Get the element's volume.
- Parameters:
-
- oValue
- Volume value
- iIntegrationType
- Type of numeric integration ( gauss scheme point of integration ).
Legal values:
- 0
- Center.
- 1
- Low precision.
- 2
- Medium precision.
- 3
- High precision.
- Returns:
- An HRESULT.
Legal values:
- S_OK
- The method is successfull.
- E_FAIL
- The method has failed.
- o Init
-
public virtual Init( | const | iCoordinates) |
-
Initialize the geometrical engine with the geometry of a finite element.
- Parameters:
-
- iCoordinates
- iCoordinates array containning pointer coordinates in the following order :
iCoordinates[0] pointer of the first coordinates of node 0.
iCoordinates[1] pointer of the first coordinates of node 1.
..
iCoordinates[NbNodes-1] pointer of the first coordinates of node the last node.
- o Init
-
public virtual Init( | | iElement) |
-
Initialize the geometrical engine with the geometry of a finite element.
- Parameters:
-
- iElement
- Finite element to be used to initialize the geometrical engine.
- o SetCoordinates
-
public virtual SetCoordinates( | const | iNuNode, |
| const | iXYZ) |
-
Set coordinates of specified node. This method invalidate all previous results like a call to Init.
- Parameters:
-
- iNuNode
- Local number of node, between 0 to NbNodes-1.
- iXYZ
- New coordinates of node.
Data Members
- o _FHeight
protected int _FHeight
-
- o _MinHeight
protected double _MinHeight
-
This object is included in the file: CATFmtGeometricalEngine.h
If needed, your Imakefile.mk should include the module: CATFmtModelInterfaces
Copyright © 1999-2014, Dassault Systèmes. All rights reserved.