#include <BaseContactMapper.h>
Base class common to all mappers able to provide a MechanicalState of a given type. More...
Base class common to all mappers able to provide a MechanicalState of a given type.
Public Member Functions | |
virtual | ~BaseContactMapper () |
virtual MMechanicalState * | createMapping (const char *name="contactPoints")=0 |
virtual void | cleanup ()=0 |
virtual void | resize (Size size)=0 |
virtual Index | addPoint (const Coord &, Index, Real &) |
Adding a point of the global referentiel to the mapping. More... | |
virtual Index | addPointB (const Coord &P, Index elementId, Real &r, const sofa::type::Vec3 &) |
Index | addPointB (const Coord &P, Index elementId, Real &r) |
virtual void | update ()=0 |
virtual void | updateXfree ()=0 |
Static Public Member Functions | |
static BaseContactMapper< DataTypes > * | Create (core::CollisionModel *model, const std::string &name=std::string("PenalityContactForceField")) |
template<class TCollisionModel > | |
static ContactMapper< TCollisionModel, DataTypes > * | create (ContactMapper< TCollisionModel, DataTypes > *, core::CollisionModel *arg) |
|
inlinevirtual |
|
inlinevirtual |
Adding a point of the global referentiel to the mapping.
|
inline |
|
inlinevirtual |
Adding a point of the global referentiel to the mapping, also giving the local referentiel Note that it cannot have the same name as addPoint otherwise it creates errors when a subclass only implement the version without barycoords
|
pure virtual |
Implemented in sofa::component::collision::response::mapper::BarycentricContactMapper< TCollisionModel, TDataTypes >, sofa::component::collision::response::mapper::BarycentricContactMapper< collision::geometry::LineCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >, sofa::component::collision::response::mapper::BarycentricContactMapper< collision::geometry::TetrahedronCollisionModel, DataTypes >, sofa::component::collision::response::mapper::BarycentricContactMapper< collision::geometry::TriangleCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >, sofa::component::collision::response::mapper::SubsetContactMapper< TCollisionModel, DataTypes >, sofa::component::collision::response::mapper::RigidContactMapper< TCollisionModel, DataTypes >, sofa::component::collision::response::mapper::RigidContactMapper< collision::geometry::CylinderCollisionModel< sofa::defaulttype::Rigid3Types >, TVec3Types >, sofa::component::collision::response::mapper::RigidContactMapper< collision::geometry::RigidSphereModel, TVec3Types >, sofa::component::collision::response::mapper::IdentityContactMapper< TCollisionModel, typename TCollisionModel::InDataTypes >, sofa::component::collision::response::mapper::IdentityContactMapper< TCollisionModel, DataTypes >, sofa::component::collision::response::mapper::IdentityContactMapper< collision::geometry::PointCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >, and sofa::component::collision::response::mapper::IdentityContactMapper< collision::geometry::SphereCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >.
|
inlinestatic |
|
inlinestatic |
|
pure virtual |
Implemented in sofa::component::collision::response::mapper::BarycentricContactMapper< TCollisionModel, TDataTypes >, sofa::component::collision::response::mapper::BarycentricContactMapper< collision::geometry::LineCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >, sofa::component::collision::response::mapper::BarycentricContactMapper< collision::geometry::TetrahedronCollisionModel, DataTypes >, sofa::component::collision::response::mapper::BarycentricContactMapper< collision::geometry::TriangleCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >, sofa::component::collision::response::mapper::SubsetContactMapper< TCollisionModel, DataTypes >, sofa::component::collision::response::mapper::RigidContactMapper< TCollisionModel, DataTypes >, sofa::component::collision::response::mapper::RigidContactMapper< collision::geometry::CylinderCollisionModel< sofa::defaulttype::Rigid3Types >, TVec3Types >, sofa::component::collision::response::mapper::RigidContactMapper< collision::geometry::RigidSphereModel, TVec3Types >, sofa::component::collision::response::mapper::IdentityContactMapper< TCollisionModel, DataTypes >, sofa::component::collision::response::mapper::IdentityContactMapper< collision::geometry::PointCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >, sofa::component::collision::response::mapper::IdentityContactMapper< collision::geometry::SphereCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >, and sofa::component::collision::response::mapper::IdentityContactMapper< TCollisionModel, typename TCollisionModel::InDataTypes >.
|
pure virtual |
Implemented in sofa::component::collision::response::mapper::IdentityContactMapper< TCollisionModel, typename TCollisionModel::InDataTypes >, sofa::component::collision::response::mapper::IdentityContactMapper< TCollisionModel, DataTypes >, sofa::component::collision::response::mapper::IdentityContactMapper< collision::geometry::PointCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >, sofa::component::collision::response::mapper::IdentityContactMapper< collision::geometry::SphereCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >, sofa::component::collision::response::mapper::SubsetContactMapper< TCollisionModel, DataTypes >, sofa::component::collision::response::mapper::RigidContactMapper< TCollisionModel, DataTypes >, sofa::component::collision::response::mapper::RigidContactMapper< collision::geometry::CylinderCollisionModel< sofa::defaulttype::Rigid3Types >, TVec3Types >, and sofa::component::collision::response::mapper::RigidContactMapper< collision::geometry::RigidSphereModel, TVec3Types >.
|
pure virtual |
Implemented in sofa::component::collision::response::mapper::BarycentricContactMapper< TCollisionModel, TDataTypes >, sofa::component::collision::response::mapper::BarycentricContactMapper< collision::geometry::LineCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >, sofa::component::collision::response::mapper::BarycentricContactMapper< collision::geometry::TetrahedronCollisionModel, DataTypes >, sofa::component::collision::response::mapper::BarycentricContactMapper< collision::geometry::TriangleCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >, sofa::component::collision::response::mapper::SubsetContactMapper< TCollisionModel, DataTypes >, sofa::component::collision::response::mapper::RigidContactMapper< TCollisionModel, DataTypes >, sofa::component::collision::response::mapper::RigidContactMapper< collision::geometry::CylinderCollisionModel< sofa::defaulttype::Rigid3Types >, TVec3Types >, sofa::component::collision::response::mapper::RigidContactMapper< collision::geometry::RigidSphereModel, TVec3Types >, sofa::component::collision::response::mapper::IdentityContactMapper< TCollisionModel, typename TCollisionModel::InDataTypes >, sofa::component::collision::response::mapper::IdentityContactMapper< TCollisionModel, DataTypes >, sofa::component::collision::response::mapper::IdentityContactMapper< collision::geometry::PointCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >, and sofa::component::collision::response::mapper::IdentityContactMapper< collision::geometry::SphereCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >.
|
pure virtual |
Implemented in sofa::component::collision::response::mapper::BarycentricContactMapper< TCollisionModel, TDataTypes >, sofa::component::collision::response::mapper::BarycentricContactMapper< collision::geometry::LineCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >, sofa::component::collision::response::mapper::BarycentricContactMapper< collision::geometry::TetrahedronCollisionModel, DataTypes >, sofa::component::collision::response::mapper::BarycentricContactMapper< collision::geometry::TriangleCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >, sofa::component::collision::response::mapper::SubsetContactMapper< TCollisionModel, DataTypes >, sofa::component::collision::response::mapper::RigidContactMapper< TCollisionModel, DataTypes >, sofa::component::collision::response::mapper::RigidContactMapper< collision::geometry::CylinderCollisionModel< sofa::defaulttype::Rigid3Types >, TVec3Types >, sofa::component::collision::response::mapper::RigidContactMapper< collision::geometry::RigidSphereModel, TVec3Types >, sofa::component::collision::response::mapper::IdentityContactMapper< TCollisionModel, typename TCollisionModel::InDataTypes >, sofa::component::collision::response::mapper::IdentityContactMapper< TCollisionModel, DataTypes >, sofa::component::collision::response::mapper::IdentityContactMapper< collision::geometry::PointCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >, and sofa::component::collision::response::mapper::IdentityContactMapper< collision::geometry::SphereCollisionModel< sofa::defaulttype::Vec3Types >, DataTypes >.