

Public Types | |
| typedef MyMeshType::MyConnType | ConnType |
Public Member Functions | |
| PlanarIntersector (const MyMeshType &meshT, const MyMeshType &meshS, double dimCaracteristic, double precision, double md3DSurf, double medianPlane, bool doRotate, int orientation, int printLevel) | |
| virtual | ~PlanarIntersector () |
| void | createBoundingBoxes (const MyMeshType &mesh, std::vector< double > &bbox) |
| void | adjustBoundingBoxes (std::vector< double > &bbox, double surf3DAdjustmentEps, double surf3DAdjustmentEpsAbs) |
| void | getElemBB (double *bb, const MyMeshType &mesh, ConnType iP, ConnType nb_nodes) |
Static Public Attributes | |
| static const int | SPACEDIM = MyMeshType::MY_SPACEDIM |
| static const int | MESHDIM = MyMeshType::MY_MESHDIM |
| static const NumberingPolicy | numPol = MyMeshType::My_numPol |
Protected Member Functions | |
| int | projectionThis (double *Coords_A, double *Coords_B, int nb_NodesA, int nb_NodesB) |
| void | getRealTargetCoordinates (ConnType icellT, std::vector< double > &coordsT) |
| void | getRealSourceCoordinates (ConnType icellS, std::vector< double > &coordsS) |
| void | getRealTargetCoordinatesPermute (ConnType icellT, int offset, std::vector< double > &coordsT) |
| void | getRealSourceCoordinatesPermute (ConnType icellS, int offset, std::vector< double > &coordsS) |
| void | getRealCoordinates (ConnType icellT, ConnType icellS, ConnType nbNodesT, ConnType nbNodesS, std::vector< double > &coordsT, std::vector< double > &coordsS, int &orientation) |
| double | getValueRegardingOption (double val) const |
Static Protected Member Functions | |
| static int | projection (double *Coords_A, double *Coords_B, int nb_NodesA, int nb_NodesB, double epsilon, double md3DSurf, double median_plane, bool do_rotate) |
| static void | rotate3DTriangle (double *PP1, double *PP2, double *PP3, TranslationRotationMatrix &rotation_matrix) |
Protected Attributes | |
| const ConnType * | _connectT |
| const ConnType * | _connectS |
| const double * | _coordsT |
| const double * | _coordsS |
| const ConnType * | _connIndexT |
| const ConnType * | _connIndexS |
| const MyMeshType & | _meshT |
| const MyMeshType & | _meshS |
| double | _dim_caracteristic |
| double | _max_distance_3Dsurf_intersect |
| double | _precision |
| double | _median_plane |
| bool | _do_rotate |
| int | _orientation |
| int | _print_level |
| typedef MyMeshType::MyConnType INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::ConnType |
Reimplemented from INTERP_KERNEL::TargetIntersector< MyMeshType, MyMatrix >.
| INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::PlanarIntersector | ( | const MyMeshType & | meshT, | |
| const MyMeshType & | meshS, | |||
| double | dimCaracteristic, | |||
| double | precision, | |||
| double | md3DSurf, | |||
| double | medianPlane, | |||
| bool | doRotate, | |||
| int | orientation, | |||
| int | printLevel | |||
| ) |
References INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connectS, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connectT, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connIndexS, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connIndexT, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_coordsS, and INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_coordsT.
| INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::~PlanarIntersector | ( | ) | [virtual] |
| void INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::createBoundingBoxes | ( | const MyMeshType & | mesh, | |
| std::vector< double > & | bbox | |||
| ) |
creates the bounding boxes for all the cells of mesh mesh
The method accepts mixed meshes (containing triangles and quadrangles). The vector returned is of dimension 6*nb_elems with bounding boxes stored as xmin1, xmax1, ymin1, ymax1, zmin1, zmax1, xmin2, xmax2, ymin2,... The returned pointer must be deleted by the calling code.
| mesh | structure pointing to the mesh | |
| bbox | vector containing the bounding boxes |
References INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::SPACEDIM.
| void INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::adjustBoundingBoxes | ( | std::vector< double > & | bbox, | |
| double | surf3DAdjustmentEps, | |||
| double | surf3DAdjustmentEpsAbs | |||
| ) |
Readjusts a set of bounding boxes so that they are extended in all dimensions for avoiding missing interesting intersections
| bbox | vector containing the bounding boxes |
References INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::SPACEDIM.
Referenced by INTERP_KERNEL::Interpolation3DSurf::performAdjustmentOfBB().
| void INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getElemBB | ( | double * | bb, | |
| const MyMeshType & | mesh, | |||
| ConnType | iP, | |||
| ConnType | nb_nodes | |||
| ) |
Computes the bouding box of a given element. iP in numPol mode.
References INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::SPACEDIM.
| int INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::projectionThis | ( | double * | Coords_A, | |
| double * | Coords_B, | |||
| int | nb_NodesA, | |||
| int | nb_NodesB | |||
| ) | [protected] |
References INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_dim_caracteristic, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_do_rotate, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_max_distance_3Dsurf_intersect, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_median_plane, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_precision, and INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::projection().
Referenced by INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealCoordinates().
| void INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealTargetCoordinates | ( | ConnType | icellT, | |
| std::vector< double > & | coordsT | |||
| ) | [protected] |
| icellT | id in target mesh in format of MyMeshType. | |
| coordsT | output val that stores coordinates of the target cell automatically resized to the right length. |
References INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connectT, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connIndexT, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_coordsT, and INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::SPACEDIM.
| void INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealSourceCoordinates | ( | ConnType | icellS, | |
| std::vector< double > & | coordsS | |||
| ) | [protected] |
| icellS | id in source mesh in format of MyMeshType. | |
| coordsS | output val that stores coordinates of the source cell automatically resized to the right length. |
References INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connectS, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connIndexS, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_coordsS, and INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::SPACEDIM.
| void INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealTargetCoordinatesPermute | ( | ConnType | icellT, | |
| int | offset, | |||
| std::vector< double > & | coordsT | |||
| ) | [protected] |
| icellT | id in target mesh in format of MyMeshType. | |
| offset | is a value in C format that indicates the number of circular permutation. | |
| coordsT | output val that stores coordinates of the target cell automatically resized to the right length. |
References INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connectT, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connIndexT, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_coordsT, and INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::SPACEDIM.
| void INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealSourceCoordinatesPermute | ( | ConnType | icellS, | |
| int | offset, | |||
| std::vector< double > & | coordsS | |||
| ) | [protected] |
| icellS | id in source mesh in format of MyMeshType. | |
| offset | is a value in C format that indicates the number of circular permutation. | |
| coordsS | output val that stores coordinates of the source cell automatically resized to the right length. |
References INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connectS, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connIndexS, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_coordsS, and INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::SPACEDIM.
| void INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealCoordinates | ( | ConnType | icellT, | |
| ConnType | icellS, | |||
| ConnType | nbNodesT, | |||
| ConnType | nbNodesS, | |||
| std::vector< double > & | coordsT, | |||
| std::vector< double > & | coordsS, | |||
| int & | orientation | |||
| ) | [protected] |
| icellT | id in target mesh in format of MyMeshType. | |
| icellS | id in source mesh in format of MyMeshType. | |
| nbNodesT | nb of nodes of the target cell. | |
| nbNodesS | nb of nodes of the source cell. | |
| coordsT | output val that stores coordinates of the target cell automatically resized to the right length. | |
| coordsS | output val that stores coordinates of the source cell automatically resized to the right length. | |
| orientation | is an output value too, only set if SPACEDIM==3. |
References INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connectS, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connectT, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connIndexS, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connIndexT, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_coordsS, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_coordsT, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_print_level, INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::projectionThis(), and INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::SPACEDIM.
| double INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getValueRegardingOption | ( | double | val | ) | const [protected] |
Filtering out zero surfaces and badly oriented surfaces _orientation = -1,0,1,2 -1 : the intersection is taken into account if target and cells have different orientation 0 : the intersection is always taken into account 1 : the intersection is taken into account if target and cells have the same orientation 2 : the absolute value of intersection is always taken into account
References INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_orientation.
| int INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::projection | ( | double * | Coords_A, | |
| double * | Coords_B, | |||
| int | nb_NodesA, | |||
| int | nb_NodesB, | |||
| double | epsilon, | |||
| double | md3DSurf, | |||
| double | median_plane, | |||
| bool | do_rotate | |||
| ) | [static, protected] |
| void INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::rotate3DTriangle | ( | double * | PP1, | |
| double * | PP2, | |||
| double * | PP3, | |||
| TranslationRotationMatrix & | rotation_matrix | |||
| ) | [static, protected] |
const int INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::SPACEDIM = MyMeshType::MY_SPACEDIM [static] |
Referenced by INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::adjustBoundingBoxes(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::createBoundingBoxes(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getElemBB(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealCoordinates(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealSourceCoordinates(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealSourceCoordinatesPermute(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealTargetCoordinates(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealTargetCoordinatesPermute(), and INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::projection().
const int INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::MESHDIM = MyMeshType::MY_MESHDIM [static] |
const NumberingPolicy INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::numPol = MyMeshType::My_numPol [static] |
const ConnType* INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connectT [protected] |
Referenced by INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealCoordinates(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealTargetCoordinates(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealTargetCoordinatesPermute(), and INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::PlanarIntersector().
const ConnType* INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connectS [protected] |
Referenced by INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealCoordinates(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealSourceCoordinates(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealSourceCoordinatesPermute(), and INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::PlanarIntersector().
const double* INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_coordsT [protected] |
Referenced by INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealCoordinates(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealTargetCoordinates(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealTargetCoordinatesPermute(), and INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::PlanarIntersector().
const double* INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_coordsS [protected] |
Referenced by INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealCoordinates(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealSourceCoordinates(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealSourceCoordinatesPermute(), and INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::PlanarIntersector().
const ConnType* INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connIndexT [protected] |
Referenced by INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealCoordinates(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealTargetCoordinates(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealTargetCoordinatesPermute(), and INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::PlanarIntersector().
const ConnType* INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connIndexS [protected] |
Referenced by INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealCoordinates(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealSourceCoordinates(), INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealSourceCoordinatesPermute(), and INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::PlanarIntersector().
const MyMeshType& INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_meshT [protected] |
const MyMeshType& INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_meshS [protected] |
double INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_dim_caracteristic [protected] |
double INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_max_distance_3Dsurf_intersect [protected] |
double INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_precision [protected] |
double INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_median_plane [protected] |
bool INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_do_rotate [protected] |
int INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_orientation [protected] |
int INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_print_level [protected] |
1.6.3