#include <InterpKernelCellSimplify.hxx>
Static Public Member Functions | |
| static INTERP_KERNEL::NormalizedCellType | simplifyDegeneratedCell (INTERP_KERNEL::NormalizedCellType type, const int *conn, int lgth, int *retConn, int &retLgth) throw (INTERP_KERNEL::Exception) |
| static int * | getFullPolyh3DCell (INTERP_KERNEL::NormalizedCellType type, const int *conn, int lgth, int &retNbOfFaces, int &retLgth) |
| static INTERP_KERNEL::NormalizedCellType | tryToUnPoly2D (const int *conn, int lgth, int *retConn, int &retLgth) |
| static INTERP_KERNEL::NormalizedCellType | tryToUnPoly3D (const int *conn, int nbOfFaces, int lgth, int *retConn, int &retLgth) |
| static INTERP_KERNEL::NormalizedCellType | tryToUnPolyHex8 (const int *conn, int nbOfFaces, int lgth, int *retConn, int &retLgth) |
| static INTERP_KERNEL::NormalizedCellType | tryToUnPolyHexp12 (const int *conn, int nbOfFaces, int lgth, int *retConn, int &retLgth) |
| static INTERP_KERNEL::NormalizedCellType | tryToUnPolyPenta6 (const int *conn, int nbOfFaces, int lgth, int *retConn, int &retLgth) |
| static INTERP_KERNEL::NormalizedCellType | tryToUnPolyPyra5 (const int *conn, int nbOfFaces, int lgth, int *retConn, int &retLgth) |
| static INTERP_KERNEL::NormalizedCellType | tryToUnPolyTetra4 (const int *conn, int nbOfFaces, int lgth, int *retConn, int &retLgth) |
| static bool | tryToArrangeOppositeFace (const int *conn, int lgth, int lgthBaseFace, const int *baseFace, const int *oppFaceId, int nbOfFaces, int *retConnOfOppFace) |
| static bool | isWellOriented (const int *baseFace, int *retConn, const int *sideFace, int lgthBaseFace) |
| static bool | orientOppositeFace (const int *baseFace, int *retConn, const int *sideFace, int lgthBaseFace) |
| INTERP_KERNEL::NormalizedCellType CellSimplify::simplifyDegeneratedCell | ( | INTERP_KERNEL::NormalizedCellType | type, |
| const int * | conn, | ||
| int | lgth, | ||
| int * | retConn, | ||
| int & | retLgth | ||
| ) | throw (INTERP_KERNEL::Exception) [static] |
This method takes as input a cell with type 'type' and whose connectivity is defined by (conn,lgth) It retrieves the same cell with a potentially different type (in return) whose connectivity is defined by (retConn,retLgth) WARNING for optimization reason the arrays 'retConn' and 'conn' can overlapped !
References testRenumbering.conn, INTERP_KERNEL.CellModel.GetCellModel(), INTERP_KERNEL.CellModel.getDimension(), INTERP_KERNEL.CellModel.isQuadratic(), testMEDMEM.ret, and medClient_test.type.
| int * CellSimplify::getFullPolyh3DCell | ( | INTERP_KERNEL::NormalizedCellType | type, |
| const int * | conn, | ||
| int | lgth, | ||
| int & | retNbOfFaces, | ||
| int & | retLgth | ||
| ) | [static] |
This method takes as input a 3D linear cell and put its representation in returned array. Warning the returned array has to be deallocated. The length of the returned array is specified by out parameter The format of output array is the following : 1,2,3,-1,3,4,2,-1,3,4,1,-1,1,2,4,NORM_TRI3,NORM_TRI3,NORM_TRI3 (faces type at the end of classical polyhedron nodal description)
References INTERP_KERNEL.CellModel.fillSonCellNodalConnectivity2(), INTERP_KERNEL.CellModel.GetCellModel(), INTERP_KERNEL.CellModel.getNumberOfSons2(), INTERP_KERNEL.CellSimplify.tryToUnPoly2D(), and medClient_test.type.
| INTERP_KERNEL::NormalizedCellType CellSimplify::tryToUnPoly2D | ( | const int * | conn, |
| int | lgth, | ||
| int * | retConn, | ||
| int & | retLgth | ||
| ) | [static] |
This static method tries to unpolygonize a cell whose connectivity is given by 'conn' and 'lgth'. Contrary to INTERP_KERNEL.CellSimplify.simplifyDegeneratedCell method 'conn' and 'retConn' do not overlap.
References INTERP_KERNEL.NORM_POLYGON, INTERP_KERNEL.NORM_QUAD4, and INTERP_KERNEL.NORM_TRI3.
| INTERP_KERNEL::NormalizedCellType CellSimplify::tryToUnPoly3D | ( | const int * | conn, |
| int | nbOfFaces, | ||
| int | lgth, | ||
| int * | retConn, | ||
| int & | retLgth | ||
| ) | [static] |
This static method tries to unpolygonize a cell whose connectivity is given by 'conn' (format is the same as specified in method INTERP_KERNEL.CellSimplify.getFullPolyh3DCell ) and 'lgth'+'nbOfFaces'. Contrary to INTERP_KERNEL.CellSimplify.simplifyDegeneratedCell method 'conn' and 'retConn' do not overlap.
References nodes, INTERP_KERNEL.NORM_POLYHED, INTERP_KERNEL.CellSimplify.tryToUnPolyHex8(), INTERP_KERNEL.CellSimplify.tryToUnPolyHexp12(), INTERP_KERNEL.CellSimplify.tryToUnPolyPenta6(), INTERP_KERNEL.CellSimplify.tryToUnPolyPyra5(), and INTERP_KERNEL.CellSimplify.tryToUnPolyTetra4().
| INTERP_KERNEL::NormalizedCellType CellSimplify::tryToUnPolyHex8 | ( | const int * | conn, |
| int | nbOfFaces, | ||
| int | lgth, | ||
| int * | retConn, | ||
| int & | retLgth | ||
| ) | [static] |
Cell with 'conn' connectivity has been detected as a good candidate. Full check of this. If yes NORM_HEXA8 is returned. This method is only callable if in 'conn' there is 8 nodes and 6 faces. If fails a POLYHED is returned.
References med_test_grid.conn1, INTERP_KERNEL.NORM_HEXA8, INTERP_KERNEL.NORM_POLYHED, INTERP_KERNEL.NORM_QUAD4, and INTERP_KERNEL.CellSimplify.tryToArrangeOppositeFace().
| INTERP_KERNEL::NormalizedCellType CellSimplify::tryToUnPolyPenta6 | ( | const int * | conn, |
| int | nbOfFaces, | ||
| int | lgth, | ||
| int * | retConn, | ||
| int & | retLgth | ||
| ) | [static] |
Cell with 'conn' connectivity has been detected as a good candidate. Full check of this. If yes NORM_PENTA6 is returned. If fails a POLYHED is returned.
References testRenumbering.conn, med_test_grid.conn1, INTERP_KERNEL.NORM_PENTA6, INTERP_KERNEL.NORM_POLYHED, INTERP_KERNEL.NORM_QUAD4, INTERP_KERNEL.NORM_TRI3, and INTERP_KERNEL.CellSimplify.tryToArrangeOppositeFace().
| INTERP_KERNEL::NormalizedCellType CellSimplify::tryToUnPolyPyra5 | ( | const int * | conn, |
| int | nbOfFaces, | ||
| int | lgth, | ||
| int * | retConn, | ||
| int & | retLgth | ||
| ) | [static] |
Cell with 'conn' connectivity has been detected as a good candidate. Full check of this. If yes NORM_PYRA5 is returned. If fails a POLYHED is returned.
References testRenumbering.conn, INTERP_KERNEL.NORM_POLYHED, INTERP_KERNEL.NORM_PYRA5, INTERP_KERNEL.NORM_QUAD4, and INTERP_KERNEL.NORM_TRI3.
| INTERP_KERNEL::NormalizedCellType CellSimplify::tryToUnPolyTetra4 | ( | const int * | conn, |
| int | nbOfFaces, | ||
| int | lgth, | ||
| int * | retConn, | ||
| int & | retLgth | ||
| ) | [static] |
Cell with 'conn' connectivity has been detected as a good candidate. Full check of this. If yes NORM_TETRA4 is returned. If fails a POLYHED is returned.
References INTERP_KERNEL.NORM_POLYHED, INTERP_KERNEL.NORM_TETRA4, and INTERP_KERNEL.NORM_TRI3.
| bool CellSimplify::tryToArrangeOppositeFace | ( | const int * | conn, |
| int | lgth, | ||
| int | lgthBaseFace, | ||
| const int * | baseFace, | ||
| const int * | oppFace, | ||
| int | nbOfFaces, | ||
| int * | retConnOfOppFace | ||
| ) | [static] |
This method is trying to permute the connectivity of 'oppFace' face so that the k_th node of 'baseFace' is associated to the k_th node in retConnOfOppFace. Excluded faces 'baseFace' and 'oppFace' all the other faces in 'conn' must be QUAD4 faces. If the arragement process succeeds true is returned and retConnOfOppFace is filled.
References testRenumbering.conn, INTERP_KERNEL.CellSimplify.isWellOriented(), INTERP_KERNEL.CellSimplify.orientOppositeFace(), and testMEDMEM.ret.
| bool CellSimplify::isWellOriented | ( | const int * | baseFace, |
| int * | retConn, | ||
| const int * | sideFace, | ||
| int | lgthBaseFace | ||
| ) | [static] |
| bool CellSimplify::orientOppositeFace | ( | const int * | baseFace, |
| int * | retConn, | ||
| const int * | sideFace, | ||
| int | lgthBaseFace | ||
| ) | [static] |
References Med_Gen_test.it.