sofa::component::mapping::BarycentricMapperMeshTopology< In, Out > Class Template Reference

Class allowing barycentric mapping computation on a MeshTopology. More...

#include <BarycentricMapping.h>

Inheritance diagram for sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >:

Inheritance graph
[legend]
Collaboration diagram for sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >:

Collaboration graph
[legend]

Public Types

typedef
TopologyBarycentricMapper< In,
Out > 
Inherit
typedef Inherit::Real Real
typedef Inherit::OutReal OutReal
typedef Inherit::MappingData1D MappingData1D
typedef Inherit::MappingData2D MappingData2D
typedef Inherit::MappingData3D MappingData3D

Public Member Functions

 BarycentricMapperMeshTopology (BaseMeshTopology *topology)
virtual ~BarycentricMapperMeshTopology ()
void clear (int reserve=0)
int addPointInLine (int lineIndex, const SReal *baryCoords)
int createPointInLine (const typename Out::Coord &p, int lineIndex, const typename In::VecCoord *points)
int addPointInTriangle (int triangleIndex, const SReal *baryCoords)
int createPointInTriangle (const typename Out::Coord &p, int triangleIndex, const typename In::VecCoord *points)
int addPointInQuad (int quadIndex, const SReal *baryCoords)
int createPointInQuad (const typename Out::Coord &p, int quadIndex, const typename In::VecCoord *points)
int addPointInTetra (int tetraIndex, const SReal *baryCoords)
int addPointInCube (int cubeIndex, const SReal *baryCoords)
void init (const typename Out::VecCoord &out, const typename In::VecCoord &in)
void apply (typename Out::VecCoord &out, const typename In::VecCoord &in)
void applyJ (typename Out::VecDeriv &out, const typename In::VecDeriv &in)
void applyJT (typename In::VecDeriv &out, const typename Out::VecDeriv &in)
void applyJT (typename In::VecConst &out, const typename Out::VecConst &in)
void draw (const typename Out::VecCoord &out, const typename In::VecCoord &in)
template<>
void apply (Out::VecCoord &out, const In::VecCoord &in)
template<>
void applyJ (Out::VecDeriv &out, const In::VecDeriv &in)
template<>
void applyJT (In::VecDeriv &out, const Out::VecDeriv &in)
template<>
void applyJT (In::VecConst &, const Out::VecConst &)
template<>
void draw (const Out::VecCoord &, const In::VecCoord &)
template<>
void apply (Out::VecCoord &out, const In::VecCoord &in)
template<>
void applyJ (Out::VecDeriv &out, const In::VecDeriv &in)
template<>
void applyJT (In::VecDeriv &out, const Out::VecDeriv &in)
template<>
void applyJT (In::VecConst &, const Out::VecConst &)
template<>
void draw (const Out::VecCoord &, const In::VecCoord &)
template<>
void apply (Out::VecCoord &out, const In::VecCoord &in)
template<>
void applyJ (Out::VecDeriv &out, const In::VecDeriv &in)
template<>
void applyJT (In::VecDeriv &out, const Out::VecDeriv &in)
template<>
void applyJT (In::VecConst &, const Out::VecConst &)
template<>
void draw (const Out::VecCoord &, const In::VecCoord &)
template<>
void apply (Out::VecCoord &out, const In::VecCoord &in)
template<>
void applyJ (Out::VecDeriv &out, const In::VecDeriv &in)
template<>
void applyJT (In::VecDeriv &out, const Out::VecDeriv &in)
template<>
void applyJT (In::VecConst &, const Out::VecConst &)
template<>
void draw (const Out::VecCoord &, const In::VecCoord &)

Protected Attributes

sofa::helper::vector
< MappingData1D > 
map1d
sofa::helper::vector
< MappingData2D > 
map2d
sofa::helper::vector
< MappingData3D > 
map3d
BaseMeshTopology * topology

Private Member Functions

void clear1d (int reserve=0)
void clear2d (int reserve=0)
void clear3d (int reserve=0)

Friends

std::istream & operator>> (std::istream &in, BarycentricMapperMeshTopology< In, Out > &b)
std::ostream & operator<< (std::ostream &out, const BarycentricMapperMeshTopology< In, Out > &b)

Detailed Description

template<class In, class Out>
class sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >

Class allowing barycentric mapping computation on a MeshTopology.

Definition at line 246 of file BarycentricMapping.h.


Member Typedef Documentation

Reimplemented from sofa::component::mapping::BarycentricMapper< In, Out >.

Definition at line 252 of file BarycentricMapping.h.

Reimplemented from sofa::component::mapping::BarycentricMapper< In, Out >.

Definition at line 253 of file BarycentricMapping.h.

Reimplemented from sofa::component::mapping::BarycentricMapper< In, Out >.

Definition at line 254 of file BarycentricMapping.h.

Reimplemented from sofa::component::mapping::BarycentricMapper< In, Out >.

Definition at line 251 of file BarycentricMapping.h.


Constructor & Destructor Documentation

template<class In , class Out >
sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::BarycentricMapperMeshTopology ( BaseMeshTopology *  topology  )  [inline]

Definition at line 262 of file BarycentricMapping.h.

template<class In , class Out >
virtual sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::~BarycentricMapperMeshTopology (  )  [inline, virtual]

Definition at line 267 of file BarycentricMapping.h.


Member Function Documentation

template<class In , class Out >
int sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::addPointInCube ( int  cubeIndex,
const SReal *  baryCoords 
) [inline, virtual]

template<class In , class Out >
int sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::addPointInLine ( int  lineIndex,
const SReal *  baryCoords 
) [inline, virtual]

template<class In , class Out >
int sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::addPointInQuad ( int  quadIndex,
const SReal *  baryCoords 
) [inline, virtual]

template<class In , class Out >
int sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::addPointInTetra ( int  tetraIndex,
const SReal *  baryCoords 
) [inline, virtual]

template<class In , class Out >
int sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::addPointInTriangle ( int  triangleIndex,
const SReal *  baryCoords 
) [inline, virtual]

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3fTypes, CudaVec3f1Types >::apply ( Out::VecCoord &  out,
const In::VecCoord &  in 
) [inline]

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3f1Types, CudaVec3fTypes >::apply ( Out::VecCoord &  out,
const In::VecCoord &  in 
) [inline]

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3f1Types, CudaVec3f1Types >::apply ( Out::VecCoord &  out,
const In::VecCoord &  in 
) [inline]

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3fTypes, CudaVec3fTypes >::apply ( Out::VecCoord &  out,
const In::VecCoord &  in 
) [inline]

template<class In , class Out >
void sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::apply ( typename Out::VecCoord &  out,
const typename In::VecCoord &  in 
) [inline, virtual]

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3fTypes, CudaVec3f1Types >::applyJ ( Out::VecDeriv &  out,
const In::VecDeriv &  in 
) [inline]

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3f1Types, CudaVec3fTypes >::applyJ ( Out::VecDeriv &  out,
const In::VecDeriv &  in 
) [inline]

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3f1Types, CudaVec3f1Types >::applyJ ( Out::VecDeriv &  out,
const In::VecDeriv &  in 
) [inline]

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3fTypes, CudaVec3fTypes >::applyJ ( Out::VecDeriv &  out,
const In::VecDeriv &  in 
) [inline]

template<class In , class Out >
void sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::applyJ ( typename Out::VecDeriv &  out,
const typename In::VecDeriv &  in 
) [inline, virtual]

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3fTypes, CudaVec3f1Types >::applyJT ( In::VecConst &  ,
const Out::VecConst &   
) [inline]

Definition at line 841 of file CudaBarycentricMapping.inl.

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3fTypes, CudaVec3f1Types >::applyJT ( In::VecDeriv &  out,
const Out::VecDeriv &  in 
) [inline]

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3f1Types, CudaVec3fTypes >::applyJT ( In::VecConst &  ,
const Out::VecConst &   
) [inline]

Definition at line 805 of file CudaBarycentricMapping.inl.

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3f1Types, CudaVec3fTypes >::applyJT ( In::VecDeriv &  out,
const Out::VecDeriv &  in 
) [inline]

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3f1Types, CudaVec3f1Types >::applyJT ( In::VecConst &  ,
const Out::VecConst &   
) [inline]

Definition at line 768 of file CudaBarycentricMapping.inl.

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3f1Types, CudaVec3f1Types >::applyJT ( In::VecDeriv &  out,
const Out::VecDeriv &  in 
) [inline]

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3fTypes, CudaVec3fTypes >::applyJT ( In::VecConst &  ,
const Out::VecConst &   
) [inline]

Definition at line 732 of file CudaBarycentricMapping.inl.

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3fTypes, CudaVec3fTypes >::applyJT ( In::VecDeriv &  out,
const Out::VecDeriv &  in 
) [inline]

template<class In , class Out >
void sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::applyJT ( typename In::VecConst &  out,
const typename Out::VecConst &  in 
) [inline, virtual]

template<class In , class Out >
void sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::applyJT ( typename In::VecDeriv &  out,
const typename Out::VecDeriv &  in 
) [inline, virtual]

template<class In , class Out >
void sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::clear ( int  reserve = 0  )  [inline, virtual]

template<class In , class Out >
void sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::clear1d ( int  reserve = 0  )  [inline, private]

template<class In , class Out >
void sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::clear2d ( int  reserve = 0  )  [inline, private]

template<class In , class Out >
void sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::clear3d ( int  reserve = 0  )  [inline, private]

template<class In , class Out >
int sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::createPointInLine ( const typename Out::Coord &  p,
int  lineIndex,
const typename In::VecCoord *  points 
) [inline, virtual]

template<class In , class Out >
int sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::createPointInQuad ( const typename Out::Coord &  p,
int  quadIndex,
const typename In::VecCoord *  points 
) [inline, virtual]

template<class In , class Out >
int sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::createPointInTriangle ( const typename Out::Coord &  p,
int  triangleIndex,
const typename In::VecCoord *  points 
) [inline, virtual]

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3fTypes, CudaVec3f1Types >::draw ( const Out::VecCoord &  ,
const In::VecCoord &   
) [inline]

Definition at line 846 of file CudaBarycentricMapping.inl.

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3f1Types, CudaVec3fTypes >::draw ( const Out::VecCoord &  ,
const In::VecCoord &   
) [inline]

Definition at line 810 of file CudaBarycentricMapping.inl.

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3f1Types, CudaVec3f1Types >::draw ( const Out::VecCoord &  ,
const In::VecCoord &   
) [inline]

Definition at line 773 of file CudaBarycentricMapping.inl.

template<>
void sofa::component::mapping::BarycentricMapperMeshTopology< CudaVec3fTypes, CudaVec3fTypes >::draw ( const Out::VecCoord &  ,
const In::VecCoord &   
) [inline]

Definition at line 737 of file CudaBarycentricMapping.inl.

template<class In , class Out >
void sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::draw ( const typename Out::VecCoord &  out,
const typename In::VecCoord &  in 
) [inline, virtual]

template<class In , class Out >
void sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::init ( const typename Out::VecCoord &  out,
const typename In::VecCoord &  in 
) [inline, virtual]


Friends And Related Function Documentation

template<class In , class Out >
std::ostream& operator<< ( std::ostream &  out,
const BarycentricMapperMeshTopology< In, Out > &  b 
) [friend]

Definition at line 324 of file BarycentricMapping.h.

template<class In , class Out >
std::istream& operator>> ( std::istream &  in,
BarycentricMapperMeshTopology< In, Out > &  b 
) [friend]

Definition at line 292 of file BarycentricMapping.h.


Field Documentation

template<class In , class Out >
BaseMeshTopology* sofa::component::mapping::BarycentricMapperMeshTopology< In, Out >::topology [protected]


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

Generated on Sun Nov 23 04:20:59 2008 for Sofa by  doxygen 1.5.7.1