#include <swiftcollisiondetector.h>
Inheritance diagram for sheep::SWIFTCollisionDetector:

Public Member Functions | |
| SWIFTCollisionDetector () | |
| virtual | ~SWIFTCollisionDetector () |
| virtual void | Insert (RigidObject *object) |
| virtual void | Remove (RigidObject *object) |
| virtual void | RefreshTransformations () |
| virtual bool | AreObjectsDisjoint () const |
| virtual bool | AreObjectHullsDisjoint () const |
| virtual void | FindContacts (ContactList *contacts) |
Private Types | |
| typedef std::map< int, RigidObject * > | id_to_object_map |
| typedef std::map< RigidObject *, int > | object_to_id_map |
| typedef std::map< RigidModel *, int > | model_to_id_map |
Private Attributes | |
| SWIFT_Scene * | m_scene |
| id_to_object_map | m_id_to_object |
| object_to_id_map | m_object_to_id |
| model_to_id_map | m_model_to_id |
| bool | m_are_disjoint |
| Are objects disjoints? | |
| int | m_num_pairs |
| int * | m_oids |
| Colliding pairs. | |
| int * | m_pids |
| int * | m_feature_types |
| int * | m_feature_ids |
| SWIFT_Real * | m_distances |
|
|
Definition at line 60 of file swiftcollisiondetector.h. |
|
|
Definition at line 62 of file swiftcollisiondetector.h. |
|
|
Definition at line 61 of file swiftcollisiondetector.h. |
|
|
Definition at line 100 of file swiftcollisiondetector.h. |
|
|
Definition at line 105 of file swiftcollisiondetector.h. |
|
|
Implements sheep::ICollisionDetector. Definition at line 116 of file swiftcollisiondetector.h. Referenced by sheep::Subspace::compute_step_end(). |
|
|
Implements sheep::ICollisionDetector. Definition at line 111 of file swiftcollisiondetector.h. Referenced by sheep::Subspace::compute_step_end(). |
|
|
Implements sheep::ICollisionDetector. Definition at line 152 of file swiftcollisiondetector.cpp. References sheep::ContactList, sheep::Contact::m_a, sheep::Contact::m_b, m_distances, sheep::Contact::m_fa, sheep::Contact::m_fb, m_feature_ids, m_feature_types, sheep::Feature::m_id0, sheep::Feature::m_id1, m_id_to_object, m_num_pairs, m_oids, and sheep::Feature::m_type. Referenced by sheep::Subspace::find_contacts(). |
|
|
|
This method must be called (before proceeding to any query) every time bodies transformation have changed or every time bodies have been inserted to or removed from the system.
Implements sheep::ICollisionDetector. Definition at line 113 of file swiftcollisiondetector.cpp. References sheep::RigidBody::GetOrientation(), sheep::RigidBody::GetPosition(), HULL_THICKNESS, m_are_disjoint, m_distances, m_feature_ids, m_feature_types, m_num_pairs, m_object_to_id, m_oids, m_pids, sheep::Vector3::m_x, sheep::Vector3::m_y, and sheep::Vector3::m_z. Referenced by sheep::Subspace::restore_state(), sheep::Subspace::Step(), and sheep::Subspace::step_bodies(). |
|
|
Implements sheep::ICollisionDetector. Definition at line 99 of file swiftcollisiondetector.cpp. References m_id_to_object, and m_object_to_id. |
|
|
Are objects disjoints?
Definition at line 68 of file swiftcollisiondetector.h. Referenced by RefreshTransformations(). |
|
|
Definition at line 74 of file swiftcollisiondetector.h. Referenced by FindContacts(), and RefreshTransformations(). |
|
|
Definition at line 73 of file swiftcollisiondetector.h. Referenced by FindContacts(), and RefreshTransformations(). |
|
|
Definition at line 72 of file swiftcollisiondetector.h. Referenced by FindContacts(), and RefreshTransformations(). |
|
|
Definition at line 64 of file swiftcollisiondetector.h. Referenced by FindContacts(), Insert(), and Remove(). |
|
|
Definition at line 66 of file swiftcollisiondetector.h. Referenced by Insert(). |
|
|
Definition at line 69 of file swiftcollisiondetector.h. Referenced by FindContacts(), and RefreshTransformations(). |
|
|
Definition at line 65 of file swiftcollisiondetector.h. Referenced by Insert(), RefreshTransformations(), and Remove(). |
|
|
Colliding pairs.
Definition at line 70 of file swiftcollisiondetector.h. Referenced by FindContacts(), and RefreshTransformations(). |
|
|
Definition at line 71 of file swiftcollisiondetector.h. Referenced by RefreshTransformations(). |
|
|
Definition at line 57 of file swiftcollisiondetector.h. |
1.3.6