SOFA API  c76874b7
Open source framework for multi-physics simuation
sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out > Class Template Reference

#include <BarycentricMappingRigid.h>

Class allowing barycentric mapping computation on a TetrahedronSetTopology in Vec3 -> Rigid case. More...

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

Detailed Description

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

Class allowing barycentric mapping computation on a TetrahedronSetTopology in Vec3 -> Rigid case.

Protected Attributes

topology::PointData< sofa::helper::vector< MappingData > > map
 mapper data More...
 
topology::PointData< sofa::helper::vector< MappingOrientData > > mapOrient
 mapper data for mapped frames More...
 
VecCoord actualTetraPosition
 
topology::TetrahedronSetTopologyContainer_fromContainer
 
topology::TetrahedronSetGeometryAlgorithms< In > * _fromGeomAlgo
 
MatrixTypematrixJ
 
bool updateJ
 
VecDeriv actualOut
 TEMP. More...
 
Out::VecCoord actualPos
 

Public Member Functions

 SOFA_CLASS (SOFA_TEMPLATE2(BarycentricMapperTetrahedronSetTopologyRigid, In, Out), SOFA_TEMPLATE2(TopologyBarycentricMapper, In, Out))
 
void clear (int reserve=0) override
 
int addPointInTetra (const int index, const SReal *baryCoords) override
 
int addPointOrientationInTetra (const int tetraIndex, const sofa::defaulttype::Matrix3 baryCoorsOrient)
 
void init (const typename Out::VecCoord &out, const typename In::VecCoord &in) override
 
void apply (typename Out::VecCoord &out, const typename In::VecCoord &in) override
 
void applyJ (typename Out::VecDeriv &out, const typename In::VecDeriv &in) override
 
void applyJT (typename In::VecDeriv &out, const typename Out::VecDeriv &in) override
 
void applyJT (typename In::MatrixDeriv &out, const typename Out::MatrixDeriv &in) override
 
const sofa::defaulttype::BaseMatrixgetJ (int outSize, int inSize) override
 
void draw (const core::visual::VisualParams *, const typename Out::VecCoord &out, const typename In::VecCoord &in) override
 
void resize (core::State< Out > *toModel) override
 

Protected Member Functions

 BarycentricMapperTetrahedronSetTopologyRigid (topology::TetrahedronSetTopologyContainer *fromTopology, topology::PointSetTopologyContainer *_toTopology)
 TEMP. More...
 
virtual ~BarycentricMapperTetrahedronSetTopologyRigid ()
 

Attribute details

template<class In, class Out>
VecDeriv sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out >::actualOut
protected

TEMP.

template<class In, class Out>
Out::VecCoord sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out >::actualPos
protected
template<class In, class Out>
VecCoord sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out >::actualTetraPosition
protected

mapper data for mapped frames

template<class In, class Out>
MatrixType* sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out >::matrixJ
protected
template<class In, class Out>
bool sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out >::updateJ
protected

Constructor details

Function details

template<class In , class Out >
int sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out >::addPointInTetra ( const int  index,
const SReal *  baryCoords 
)
override
template<class In , class Out >
int sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out >::addPointOrientationInTetra ( const int  tetraIndex,
const sofa::defaulttype::Matrix3  baryCoorsOrient 
)
template<class In, class Out>
void sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out >::apply ( typename Out::VecCoord &  out,
const typename In::VecCoord &  in 
)
override
template<class In, class Out>
void sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out >::applyJ ( typename Out::VecDeriv &  out,
const typename In::VecDeriv &  in 
)
override
template<class In, class Out>
void sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out >::applyJT ( typename In::VecDeriv &  out,
const typename Out::VecDeriv &  in 
)
override
template<class In, class Out>
void sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out >::applyJT ( typename In::MatrixDeriv &  out,
const typename Out::MatrixDeriv &  in 
)
override
template<class In , class Out >
void sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out >::clear ( int  reserve = 0)
override
template<class In, class Out>
void sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out >::draw ( const core::visual::VisualParams vparams,
const typename Out::VecCoord &  out,
const typename In::VecCoord &  in 
)
override
template<class In , class Out >
const sofa::defaulttype::BaseMatrix * sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out >::getJ ( int  outSize,
int  inSize 
)
override
template<class In, class Out>
void sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out >::init ( const typename Out::VecCoord &  out,
const typename In::VecCoord &  in 
)
override
template<class In , class Out>
void sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out >::resize ( core::State< Out > *  toModel)
override
template<class In, class Out>
sofa::component::mapping::BarycentricMapperTetrahedronSetTopologyRigid< In, Out >::SOFA_CLASS ( SOFA_TEMPLATE2(BarycentricMapperTetrahedronSetTopologyRigid< In, Out >, In, Out ,
SOFA_TEMPLATE2(TopologyBarycentricMapper, In, Out  
)

Enum details

template<class In, class Out>
anonymous enum
Enumerator
NIn 
template<class In, class Out>
anonymous enum
Enumerator
NOut