sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 > Class Template Reference

#include <FrictionContact.h>

Inheritance diagram for sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >:

Inheritance graph
[legend]
Collaboration diagram for sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >:

Collaboration graph
[legend]

Public Types

typedef TCollisionModel1 CollisionModel1
typedef TCollisionModel2 CollisionModel2
typedef
core::componentmodel::collision::Intersection 
Intersection
typedef CollisionModel1::DataTypes DataTypes1
typedef CollisionModel2::DataTypes DataTypes2
typedef
core::componentmodel::behavior::MechanicalState
< DataTypes1 > 
MechanicalState1
typedef
core::componentmodel::behavior::MechanicalState
< DataTypes2 > 
MechanicalState2
typedef CollisionModel1::Element CollisionElement1
typedef CollisionModel2::Element CollisionElement2
typedef
core::componentmodel::collision::DetectionOutputVector 
OutputVector
typedef
core::componentmodel::collision::TDetectionOutputVector
< CollisionModel1,
CollisionModel2 > 
TOutputVector

Public Member Functions

 FrictionContact (CollisionModel1 *model1, CollisionModel2 *model2, Intersection *intersectionMethod)
virtual ~FrictionContact ()
void cleanup ()
 Called just before deleting this object Any object in the tree bellow this object that are to be removed will be removed only after this call, so any references this object holds should still be valid.
std::pair
< core::CollisionModel
*, core::CollisionModel * > 
getCollisionModels ()
 Get the pair of collision models which are in contact.
void setDetectionOutputs (OutputVector *outputs)
 Set the generic description of a contact point.
void createResponse (core::objectmodel::BaseContext *group)
void removeResponse ()

Protected Attributes

CollisionModel1 * model1
CollisionModel2 * model2
Intersection * intersectionMethod
ContactMapper< CollisionModel1,
DataTypes1 > 
mapper1
ContactMapper< CollisionModel2,
DataTypes2 > 
mapper2
constraint::UnilateralInteractionConstraint
< Vec3Types > * 
c
core::objectmodel::BaseContext * parent
double mu

Detailed Description

template<class TCollisionModel1, class TCollisionModel2>
class sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >

Definition at line 75 of file FrictionContact.h.


Member Typedef Documentation

template<class TCollisionModel1 , class TCollisionModel2 >
typedef CollisionModel1::Element sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::CollisionElement1

Definition at line 85 of file FrictionContact.h.

template<class TCollisionModel1 , class TCollisionModel2 >
typedef CollisionModel2::Element sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::CollisionElement2

Definition at line 86 of file FrictionContact.h.

template<class TCollisionModel1 , class TCollisionModel2 >
typedef TCollisionModel1 sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::CollisionModel1

Definition at line 78 of file FrictionContact.h.

template<class TCollisionModel1 , class TCollisionModel2 >
typedef TCollisionModel2 sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::CollisionModel2

Definition at line 79 of file FrictionContact.h.

template<class TCollisionModel1 , class TCollisionModel2 >
typedef CollisionModel1::DataTypes sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::DataTypes1

Definition at line 81 of file FrictionContact.h.

template<class TCollisionModel1 , class TCollisionModel2 >
typedef CollisionModel2::DataTypes sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::DataTypes2

Definition at line 82 of file FrictionContact.h.

template<class TCollisionModel1 , class TCollisionModel2 >
typedef core::componentmodel::collision::Intersection sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::Intersection

Definition at line 80 of file FrictionContact.h.

template<class TCollisionModel1 , class TCollisionModel2 >
typedef core::componentmodel::behavior::MechanicalState<DataTypes1> sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::MechanicalState1

Definition at line 83 of file FrictionContact.h.

template<class TCollisionModel1 , class TCollisionModel2 >
typedef core::componentmodel::behavior::MechanicalState<DataTypes2> sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::MechanicalState2

Definition at line 84 of file FrictionContact.h.

template<class TCollisionModel1 , class TCollisionModel2 >
typedef core::componentmodel::collision::DetectionOutputVector sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::OutputVector

Definition at line 87 of file FrictionContact.h.

template<class TCollisionModel1 , class TCollisionModel2 >
typedef core::componentmodel::collision::TDetectionOutputVector<CollisionModel1,CollisionModel2> sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::TOutputVector

Definition at line 88 of file FrictionContact.h.


Constructor & Destructor Documentation

template<class TCollisionModel1 , class TCollisionModel2 >
sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::FrictionContact ( CollisionModel1 *  model1,
CollisionModel2 *  model2,
Intersection *  intersectionMethod 
) [inline]

template<class TCollisionModel1 , class TCollisionModel2 >
sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::~FrictionContact (  )  [inline, virtual]


Member Function Documentation

template<class TCollisionModel1 , class TCollisionModel2 >
void sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::cleanup (  )  [inline, virtual]

Called just before deleting this object Any object in the tree bellow this object that are to be removed will be removed only after this call, so any references this object holds should still be valid.

Called just before deleting this object Any object in the tree bellow this object that are to be removed will be removed only after this call, so any references this object holds should still be valid.

Reimplemented from sofa::core::objectmodel::BaseObject.

Definition at line 68 of file FrictionContact.inl.

References sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::c, sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::mapper1, sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::mapper2, sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::parent, and sofa::core::objectmodel::BaseContext::removeObject().

template<class TCollisionModel1 , class TCollisionModel2 >
void sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::createResponse ( core::objectmodel::BaseContext *  group  )  [inline, virtual]

template<class TCollisionModel1 , class TCollisionModel2 >
std::pair<core::CollisionModel*,core::CollisionModel*> sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::getCollisionModels (  )  [inline, virtual]

template<class TCollisionModel1 , class TCollisionModel2 >
void sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::removeResponse (  )  [inline, virtual]

template<class TCollisionModel1 , class TCollisionModel2 >
void sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::setDetectionOutputs ( OutputVector *  outputs  )  [inline, virtual]

Set the generic description of a contact point.

Implements sofa::core::componentmodel::collision::Contact.

Definition at line 161 of file FrictionContact.inl.


Field Documentation

template<class TCollisionModel1 , class TCollisionModel2 >
constraint::UnilateralInteractionConstraint<Vec3Types>* sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::c [protected]

template<class TCollisionModel1 , class TCollisionModel2 >
Intersection* sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::intersectionMethod [protected]

Definition at line 93 of file FrictionContact.h.

template<class TCollisionModel1 , class TCollisionModel2 >
ContactMapper<CollisionModel1,DataTypes1> sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::mapper1 [protected]

template<class TCollisionModel1 , class TCollisionModel2 >
ContactMapper<CollisionModel2,DataTypes2> sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::mapper2 [protected]

template<class TCollisionModel1 , class TCollisionModel2 >
CollisionModel1* sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::model1 [protected]

template<class TCollisionModel1 , class TCollisionModel2 >
CollisionModel2* sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::model2 [protected]

template<class TCollisionModel1 , class TCollisionModel2 >
double sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::mu [protected]

template<class TCollisionModel1 , class TCollisionModel2 >
core::objectmodel::BaseContext* sofa::component::collision::FrictionContact< TCollisionModel1, TCollisionModel2 >::parent [protected]


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

Generated on Sun Nov 23 04:17:28 2008 for Sofa by  doxygen 1.5.7.1