SOFA API  f37305c1
Open source framework for multi-physics simuation
sofa::component::mapping::linear::DistanceToPlaneMapping< TIn > Class Template Reference

#include <DistanceToPlaneMapping.h>

Inheritance diagram for sofa::component::mapping::linear::DistanceToPlaneMapping< TIn >:

Public Attributes

Data< type::Vec< Deriv_t< TIn >::spatial_dimensions, typename Deriv_t< TIn >::value_type > > d_planeNormal
 Normal of the plane to compute the distance to. More...
 
Data< type::Vec< Coord_t< TIn >::spatial_dimensions, typename Coord_t< TIn >::value_type > > d_planePoint
 A point belonging to the plane. More...
 

Protected Attributes

linearalgebra::EigenSparseMatrix< TIn, TOutJ
 

Public Member Functions

 SOFA_CLASS (SOFA_TEMPLATE(DistanceToPlaneMapping, TIn), SOFA_TEMPLATE2(LinearMapping, TIn, defaulttype::Vec1dTypes))
 
void init () override
 
void apply (const core::MechanicalParams *mparams, Data< VecCoord_t< TOut >> &out, const Data< VecCoord_t< TIn >> &in) override
 
void applyJ (const core::MechanicalParams *mparams, Data< VecDeriv_t< TOut >> &out, const Data< VecDeriv_t< TIn >> &in) override
 
void applyJT (const core::MechanicalParams *mparams, Data< VecDeriv_t< TIn >> &out, const Data< VecDeriv_t< TOut >> &in) override
 
void applyJT (const core::ConstraintParams *cparams, Data< MatrixDeriv_t< TIn >> &out, const Data< MatrixDeriv_t< TOut >> &in) override
 
const linearalgebra::BaseMatrixgetJ () override
 
void handleTopologyChange () override
 
- Public Member Functions inherited from sofa::component::mapping::linear::crtp::CRTPLinearMapping< TMapping >
 SOFA_CLASS (SOFA_TEMPLATE(CRTPLinearMapping, TMapping), TMapping)
 
virtual bool isLinear () const override
 

Protected Member Functions

 DistanceToPlaneMapping ()
 
virtual ~DistanceToPlaneMapping ()
 

Attribute details

◆ d_planeNormal

template<class TIn >
Data<type::Vec<Deriv_t<TIn>::spatial_dimensions,typename Deriv_t<TIn>::value_type> > sofa::component::mapping::linear::DistanceToPlaneMapping< TIn >::d_planeNormal

Normal of the plane to compute the distance to.

◆ d_planePoint

template<class TIn >
Data<type::Vec<Coord_t<TIn>::spatial_dimensions,typename Coord_t<TIn>::value_type> > sofa::component::mapping::linear::DistanceToPlaneMapping< TIn >::d_planePoint

A point belonging to the plane.

◆ J

Constructor details

◆ DistanceToPlaneMapping()

◆ ~DistanceToPlaneMapping()

template<class TIn >
virtual sofa::component::mapping::linear::DistanceToPlaneMapping< TIn >::~DistanceToPlaneMapping ( )
inlineprotectedvirtual

Function details

◆ apply()

template<class TIn >
void sofa::component::mapping::linear::DistanceToPlaneMapping< TIn >::apply ( const core::MechanicalParams mparams,
Data< VecCoord_t< TOut >> &  out,
const Data< VecCoord_t< TIn >> &  in 
)
override

◆ applyJ()

template<class TIn >
void sofa::component::mapping::linear::DistanceToPlaneMapping< TIn >::applyJ ( const core::MechanicalParams mparams,
Data< VecDeriv_t< TOut >> &  out,
const Data< VecDeriv_t< TIn >> &  in 
)
override

◆ applyJT() [1/2]

template<class TIn >
void sofa::component::mapping::linear::DistanceToPlaneMapping< TIn >::applyJT ( const core::ConstraintParams cparams,
Data< MatrixDeriv_t< TIn >> &  out,
const Data< MatrixDeriv_t< TOut >> &  in 
)
override

◆ applyJT() [2/2]

template<class TIn >
void sofa::component::mapping::linear::DistanceToPlaneMapping< TIn >::applyJT ( const core::MechanicalParams mparams,
Data< VecDeriv_t< TIn >> &  out,
const Data< VecDeriv_t< TOut >> &  in 
)
override

◆ getJ()

template<class TIn >
const linearalgebra::BaseMatrix * sofa::component::mapping::linear::DistanceToPlaneMapping< TIn >::getJ
override

◆ handleTopologyChange()

template<class TIn >
void sofa::component::mapping::linear::DistanceToPlaneMapping< TIn >::handleTopologyChange
override

◆ init()

template<class TIn >
void sofa::component::mapping::linear::DistanceToPlaneMapping< TIn >::init ( void  )
override

◆ SOFA_CLASS()

template<class TIn >
sofa::component::mapping::linear::DistanceToPlaneMapping< TIn >::SOFA_CLASS ( SOFA_TEMPLATE(DistanceToPlaneMapping< TIn >, TIn)  ,
SOFA_TEMPLATE2(LinearMapping, TIn, defaulttype::Vec1dTypes  
)