

Public Types | |
| typedef Elem1::Model | Model1 |
| typedef Elem2::Model | Model2 |
Public Member Functions | |
| MemberElementIntersector (T *ptr) | |
| bool | canIntersect (core::CollisionElementIterator elem1, core::CollisionElementIterator elem2) |
| Test if 2 elements can collide. Note that this can be conservative (i.e. return true even when no collision is present). | |
| int | beginIntersect (core::CollisionModel *model1, core::CollisionModel *model2, DetectionOutputVector *&contacts) |
| Begin intersection tests between two collision models. | |
| int | intersect (core::CollisionElementIterator elem1, core::CollisionElementIterator elem2, DetectionOutputVector *contacts) |
| Compute the intersection between 2 elements. | |
| std::string | name () const |
| int | endIntersect (core::CollisionModel *model1, core::CollisionModel *model2, DetectionOutputVector *contacts) |
| End intersection tests between two collision models. Return the number of contacts written in the contacts vector. | |
Protected Attributes | |
| T * | impl |
Definition at line 49 of file Intersection.inl.
| typedef Elem1::Model sofa::core::componentmodel::collision::MemberElementIntersector< Elem1, Elem2, T >::Model1 |
Definition at line 52 of file Intersection.inl.
| typedef Elem2::Model sofa::core::componentmodel::collision::MemberElementIntersector< Elem1, Elem2, T >::Model2 |
Definition at line 53 of file Intersection.inl.
| sofa::core::componentmodel::collision::MemberElementIntersector< Elem1, Elem2, T >::MemberElementIntersector | ( | T * | ptr | ) | [inline] |
Definition at line 54 of file Intersection.inl.
| int sofa::core::componentmodel::collision::MemberElementIntersector< Elem1, Elem2, T >::beginIntersect | ( | core::CollisionModel * | model1, | |
| core::CollisionModel * | model2, | |||
| DetectionOutputVector *& | contacts | |||
| ) | [inline, virtual] |
Begin intersection tests between two collision models.
Return the number of contacts written in the contacts vector. If the given contacts vector is NULL, then this method should allocate it.
Implements sofa::core::componentmodel::collision::ElementIntersector.
Definition at line 65 of file Intersection.inl.
References sofa::core::componentmodel::collision::MemberElementIntersector< Elem1, Elem2, T >::impl.
| bool sofa::core::componentmodel::collision::MemberElementIntersector< Elem1, Elem2, T >::canIntersect | ( | core::CollisionElementIterator | elem1, | |
| core::CollisionElementIterator | elem2 | |||
| ) | [inline, virtual] |
Test if 2 elements can collide. Note that this can be conservative (i.e. return true even when no collision is present).
Implements sofa::core::componentmodel::collision::ElementIntersector.
Definition at line 56 of file Intersection.inl.
References sofa::core::componentmodel::collision::MemberElementIntersector< Elem1, Elem2, T >::impl.
| int sofa::core::componentmodel::collision::MemberElementIntersector< Elem1, Elem2, T >::endIntersect | ( | core::CollisionModel * | model1, | |
| core::CollisionModel * | model2, | |||
| DetectionOutputVector * | contacts | |||
| ) | [inline, virtual] |
End intersection tests between two collision models. Return the number of contacts written in the contacts vector.
Implements sofa::core::componentmodel::collision::ElementIntersector.
Definition at line 90 of file Intersection.inl.
References sofa::core::componentmodel::collision::MemberElementIntersector< Elem1, Elem2, T >::impl.
| int sofa::core::componentmodel::collision::MemberElementIntersector< Elem1, Elem2, T >::intersect | ( | core::CollisionElementIterator | elem1, | |
| core::CollisionElementIterator | elem2, | |||
| DetectionOutputVector * | contacts | |||
| ) | [inline, virtual] |
Compute the intersection between 2 elements.
Implements sofa::core::componentmodel::collision::ElementIntersector.
Definition at line 77 of file Intersection.inl.
References sofa::core::componentmodel::collision::MemberElementIntersector< Elem1, Elem2, T >::impl.
| std::string sofa::core::componentmodel::collision::MemberElementIntersector< Elem1, Elem2, T >::name | ( | ) | const [inline, virtual] |
Implements sofa::core::componentmodel::collision::ElementIntersector.
Definition at line 84 of file Intersection.inl.
References sofa::helper::gettypename().
T* sofa::core::componentmodel::collision::MemberElementIntersector< Elem1, Elem2, T >::impl [protected] |
Definition at line 98 of file Intersection.inl.
Referenced by sofa::core::componentmodel::collision::MemberElementIntersector< Elem1, Elem2, T >::beginIntersect(), sofa::core::componentmodel::collision::MemberElementIntersector< Elem1, Elem2, T >::canIntersect(), sofa::core::componentmodel::collision::MemberElementIntersector< Elem1, Elem2, T >::endIntersect(), and sofa::core::componentmodel::collision::MemberElementIntersector< Elem1, Elem2, T >::intersect().
1.5.7.1