Back to index

salome-med  6.5.0
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes
INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix > Class Template Reference

#include <PlanarIntersector.hxx>

Inheritance diagram for INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >:
Inheritance graph
[legend]
Collaboration diagram for INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef MyMeshType::MyConnType ConnType
typedef std::map< int,
std::set< int > > 
DuplicateFacesType

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)
virtual const DuplicateFacesTypegetIntersectFaces () const
virtual void intersectCells (ConnType targetCell, const std::vector< ConnType > &srcCells, MyMatrix &res)=0
 Tool for cell intersection, result is always positive.
virtual int getNumberOfRowsOfResMatrix () const =0
virtual int getNumberOfColsOfResMatrix () const =0

Static Public 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 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 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

Detailed Description

template<class MyMeshType, class MyMatrix>
class INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >

Definition at line 34 of file PlanarIntersector.hxx.


Member Typedef Documentation

template<class MyMeshType, class MyMatrix>
typedef MyMeshType::MyConnType INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::ConnType
template<class MyMeshType, class MyMatrix>
typedef std::map<int,std::set<int> > INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::DuplicateFacesType

Definition at line 41 of file PlanarIntersector.hxx.


Constructor & Destructor Documentation

template<class MyMeshType, class 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 
)
template<class MyMeshType, class MyMatrix>
virtual INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::~PlanarIntersector ( ) [virtual]

Member Function Documentation

template<class MyMeshType, class MyMatrix>
void INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::adjustBoundingBoxes ( std::vector< double > &  bbox,
double  surf3DAdjustmentEps,
double  surf3DAdjustmentEpsAbs 
)

Here is the caller graph for this function:

template<class MyMeshType, class MyMatrix>
void INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::createBoundingBoxes ( const MyMeshType &  mesh,
std::vector< double > &  bbox 
)
template<class MyMeshType, class MyMatrix>
void INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getElemBB ( double *  bb,
const MyMeshType &  mesh,
ConnType  iP,
ConnType  nb_nodes 
) [inline]
template<class MyMeshType, class MyMatrix>
virtual const DuplicateFacesType* INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getIntersectFaces ( ) const [inline, virtual]
template<class MyMeshType, class MyMatrix>
virtual int INTERP_KERNEL::TargetIntersector< MyMeshType, MyMatrix >::getNumberOfColsOfResMatrix ( ) const [pure virtual, inherited]

Implemented in INTERP_KERNEL::IntegralUniformIntersectorP1< MyMeshType, MyMatrix >, INTERP_KERNEL::IntegralUniformIntersectorP0< MyMeshType, MyMatrix >, INTERP_KERNEL::IntersectorCU< MyCMeshType, MyUMeshType, MyMatrix, ConcreteIntersector >, INTERP_KERNEL::IntersectorCU< MyCMeshType, MyUMeshType, MyMatrix, IntersectorCU3D< MyCMeshType, MyUMeshType, MyMatrix > >, INTERP_KERNEL::IntersectorCU< MyCMeshType, MyUMeshType, MyMatrix, _StabIntersector< MyCMeshType, MyUMeshType, MyMatrix > >, INTERP_KERNEL::IntersectorCU< MyCMeshType, MyUMeshType, MyMatrix, IntersectorCU2D< MyCMeshType, MyUMeshType, MyMatrix > >, INTERP_KERNEL::IntersectorCU< MyCMeshType, MyUMeshType, MyMatrix, IntersectorCU1D< MyCMeshType, MyUMeshType, MyMatrix > >, INTERP_KERNEL::CurveIntersectorP0P1< MyMeshType, MyMatrix >, INTERP_KERNEL::CurveIntersectorP1P1< MyMeshType, MyMatrix >, INTERP_KERNEL::CurveIntersectorP0P0< MyMeshType, MyMatrix >, INTERP_KERNEL::CurveIntersectorP1P0< MyMeshType, MyMatrix >, INTERP_KERNEL::Planar2D1DIntersectorP0P0< MyMeshType, MyMatrix, ConcreteP0P0Intersector >, INTERP_KERNEL::PlanarIntersectorP0P1< MyMeshType, MyMatrix, ConcreteP0P1Intersector >, INTERP_KERNEL::PlanarIntersectorP1P0< MyMeshType, MyMatrix, ConcreteP1P0Intersector >, INTERP_KERNEL::PlanarIntersectorP1P0Bary< MyMeshType, MyMatrix, ConcreteP1P0Intersector >, INTERP_KERNEL::PlanarIntersectorP1P1< MyMeshType, MyMatrix, ConcreteP1P1Intersector >, INTERP_KERNEL::PlanarIntersectorP0P0< MyMeshType, MyMatrix, ConcreteP0P0Intersector >, INTERP_KERNEL::PlanarIntersectorP0P1PL< MyMeshType, MyMatrix >, INTERP_KERNEL::PlanarIntersectorP1P0PL< MyMeshType, MyMatrix >, INTERP_KERNEL::PlanarIntersectorP1P1PL< MyMeshType, MyMatrix >, INTERP_KERNEL::PlanarIntersectorP0P0< MyUMeshType, MyMatrix, TriangulationIntersector< MyUMeshType, MyMatrix, PlanarIntersectorP0P0 > >, INTERP_KERNEL::Intersector3DP0P0< MyMeshType, MyMatrix >, INTERP_KERNEL::Intersector3DP0P1< MyMeshType, MyMatrix >, INTERP_KERNEL::Intersector3DP1P0< MyMeshType, MyMatrix >, INTERP_KERNEL::Intersector3DP1P0Bary< MyMeshType, MyMatrix >, INTERP_KERNEL::Intersector3DP1P1< MyMeshType, MyMatrix >, and INTERP_KERNEL::Intersector3DP0P0< MyMeshType, MyMatrixType >.

template<class MyMeshType, class MyMatrix>
virtual int INTERP_KERNEL::TargetIntersector< MyMeshType, MyMatrix >::getNumberOfRowsOfResMatrix ( ) const [pure virtual, inherited]

Implemented in INTERP_KERNEL::IntegralUniformIntersectorP1< MyMeshType, MyMatrix >, INTERP_KERNEL::IntegralUniformIntersectorP0< MyMeshType, MyMatrix >, INTERP_KERNEL::IntersectorCU< MyCMeshType, MyUMeshType, MyMatrix, ConcreteIntersector >, INTERP_KERNEL::IntersectorCU< MyCMeshType, MyUMeshType, MyMatrix, IntersectorCU3D< MyCMeshType, MyUMeshType, MyMatrix > >, INTERP_KERNEL::IntersectorCU< MyCMeshType, MyUMeshType, MyMatrix, _StabIntersector< MyCMeshType, MyUMeshType, MyMatrix > >, INTERP_KERNEL::IntersectorCU< MyCMeshType, MyUMeshType, MyMatrix, IntersectorCU2D< MyCMeshType, MyUMeshType, MyMatrix > >, INTERP_KERNEL::IntersectorCU< MyCMeshType, MyUMeshType, MyMatrix, IntersectorCU1D< MyCMeshType, MyUMeshType, MyMatrix > >, INTERP_KERNEL::CurveIntersectorP0P1< MyMeshType, MyMatrix >, INTERP_KERNEL::CurveIntersectorP1P1< MyMeshType, MyMatrix >, INTERP_KERNEL::CurveIntersectorP0P0< MyMeshType, MyMatrix >, INTERP_KERNEL::CurveIntersectorP1P0< MyMeshType, MyMatrix >, INTERP_KERNEL::Planar2D1DIntersectorP0P0< MyMeshType, MyMatrix, ConcreteP0P0Intersector >, INTERP_KERNEL::PlanarIntersectorP0P1< MyMeshType, MyMatrix, ConcreteP0P1Intersector >, INTERP_KERNEL::PlanarIntersectorP1P0< MyMeshType, MyMatrix, ConcreteP1P0Intersector >, INTERP_KERNEL::PlanarIntersectorP1P0Bary< MyMeshType, MyMatrix, ConcreteP1P0Intersector >, INTERP_KERNEL::PlanarIntersectorP1P1< MyMeshType, MyMatrix, ConcreteP1P1Intersector >, INTERP_KERNEL::PlanarIntersectorP0P0< MyMeshType, MyMatrix, ConcreteP0P0Intersector >, INTERP_KERNEL::PlanarIntersectorP0P1PL< MyMeshType, MyMatrix >, INTERP_KERNEL::PlanarIntersectorP1P0PL< MyMeshType, MyMatrix >, INTERP_KERNEL::PlanarIntersectorP1P1PL< MyMeshType, MyMatrix >, INTERP_KERNEL::PlanarIntersectorP0P0< MyUMeshType, MyMatrix, TriangulationIntersector< MyUMeshType, MyMatrix, PlanarIntersectorP0P0 > >, INTERP_KERNEL::Intersector3DP0P0< MyMeshType, MyMatrix >, INTERP_KERNEL::Intersector3DP0P1< MyMeshType, MyMatrix >, INTERP_KERNEL::Intersector3DP1P0< MyMeshType, MyMatrix >, INTERP_KERNEL::Intersector3DP1P0Bary< MyMeshType, MyMatrix >, INTERP_KERNEL::Intersector3DP1P1< MyMeshType, MyMatrix >, and INTERP_KERNEL::Intersector3DP0P0< MyMeshType, MyMatrixType >.

template<class MyMeshType, class MyMatrix>
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]
template<class MyMeshType, class MyMatrix>
void INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealSourceCoordinates ( ConnType  icellS,
std::vector< double > &  coordsS 
) [protected]
template<class MyMeshType, class MyMatrix>
void INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealSourceCoordinatesPermute ( ConnType  icellS,
int  offset,
std::vector< double > &  coordsS 
) [protected]
template<class MyMeshType, class MyMatrix>
void INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealTargetCoordinates ( ConnType  icellT,
std::vector< double > &  coordsT 
) [protected]
template<class MyMeshType, class MyMatrix>
void INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getRealTargetCoordinatesPermute ( ConnType  icellT,
int  offset,
std::vector< double > &  coordsT 
) [protected]
template<class MyMeshType, class MyMatrix>
double INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::getValueRegardingOption ( double  val) const [protected]
template<class MyMeshType, class MyMatrix>
static 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]
template<class MyMeshType, class MyMatrix>
int INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::projectionThis ( double *  Coords_A,
double *  Coords_B,
int  nb_NodesA,
int  nb_NodesB 
) [protected]
template<class MyMeshType, class MyMatrix>
static void INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::rotate3DTriangle ( double *  PP1,
double *  PP2,
double *  PP3,
TranslationRotationMatrix &  rotation_matrix 
) [static, protected]

Member Data Documentation

template<class MyMeshType, class MyMatrix>
const ConnType* INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connectS [protected]

Definition at line 68 of file PlanarIntersector.hxx.

template<class MyMeshType, class MyMatrix>
const ConnType* INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connectT [protected]

Definition at line 67 of file PlanarIntersector.hxx.

template<class MyMeshType, class MyMatrix>
const ConnType* INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connIndexS [protected]

Definition at line 72 of file PlanarIntersector.hxx.

template<class MyMeshType, class MyMatrix>
const ConnType* INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_connIndexT [protected]

Definition at line 71 of file PlanarIntersector.hxx.

template<class MyMeshType, class MyMatrix>
const double* INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_coordsS [protected]

Definition at line 70 of file PlanarIntersector.hxx.

template<class MyMeshType, class MyMatrix>
const double* INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_coordsT [protected]

Definition at line 69 of file PlanarIntersector.hxx.

template<class MyMeshType, class MyMatrix>
double INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_dim_caracteristic [protected]

Definition at line 75 of file PlanarIntersector.hxx.

template<class MyMeshType, class MyMatrix>
bool INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_do_rotate [protected]

Definition at line 79 of file PlanarIntersector.hxx.

template<class MyMeshType, class MyMatrix>
double INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_max_distance_3Dsurf_intersect [protected]

Definition at line 76 of file PlanarIntersector.hxx.

template<class MyMeshType, class MyMatrix>
double INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_median_plane [protected]

Definition at line 78 of file PlanarIntersector.hxx.

template<class MyMeshType, class MyMatrix>
const MyMeshType& INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_meshS [protected]

Definition at line 74 of file PlanarIntersector.hxx.

template<class MyMeshType, class MyMatrix>
const MyMeshType& INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_meshT [protected]

Definition at line 73 of file PlanarIntersector.hxx.

template<class MyMeshType, class MyMatrix>
int INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_orientation [protected]

Definition at line 80 of file PlanarIntersector.hxx.

template<class MyMeshType, class MyMatrix>
double INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_precision [protected]

Definition at line 77 of file PlanarIntersector.hxx.

template<class MyMeshType, class MyMatrix>
int INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::_print_level [protected]

Definition at line 81 of file PlanarIntersector.hxx.

template<class MyMeshType, class MyMatrix>
const int INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::MESHDIM = MyMeshType::MY_MESHDIM [static]
template<class MyMeshType, class MyMatrix>
const NumberingPolicy INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::numPol = MyMeshType::My_numPol [static]
template<class MyMeshType, class MyMatrix>
const int INTERP_KERNEL::PlanarIntersector< MyMeshType, MyMatrix >::SPACEDIM = MyMeshType::MY_SPACEDIM [static]

The documentation for this class was generated from the following file: