#include <dynamics3d_model.h>
Classes | |
class | CAbstractBody |
Public Types | |
typedef std::map< std::string, CDynamics3DModel * > | TMap |
Public Types inherited from argos::CPhysicsModel | |
typedef std::map< std::string, CPhysicsModel * > | TMap |
typedef std::vector< CPhysicsModel * > | TVector |
Public Member Functions | |
CDynamics3DModel (CDynamics3DEngine &c_engine, CComposableEntity &c_entity) | |
virtual | ~CDynamics3DModel () |
virtual void | Reset ()=0 |
CDynamics3DEngine & | GetEngine () |
const CDynamics3DEngine & | GetEngine () const |
CComposableEntity & | GetComposableEntity () |
const CComposableEntity & | GetComposableEntity () const |
virtual bool | IsCollidingWithSomething () const |
Returns true if this model is colliding with another model. More... | |
virtual void | UpdateEntityStatus () |
Updates the status of the associated entity. More... | |
virtual void | UpdateFromEntityStatus () |
Updates the state of this model from the status of the associated entity. More... | |
std::vector< std::shared_ptr< CAbstractBody > > & | GetBodies () |
virtual void | AddToWorld (btMultiBodyDynamicsWorld &c_world)=0 |
virtual void | RemoveFromWorld (btMultiBodyDynamicsWorld &c_world)=0 |
Public Member Functions inherited from argos::CPhysicsModel | |
CPhysicsModel (CPhysicsEngine &c_engine, CEmbodiedEntity &c_entity) | |
virtual | ~CPhysicsModel () |
CPhysicsEngine & | GetEngine () |
Returns the physics engine associated to this physics model. More... | |
CEmbodiedEntity & | GetEmbodiedEntity () |
Returns the embodied entity associated to this physics model. More... | |
const CEmbodiedEntity & | GetEmbodiedEntity () const |
Returns the embodied entity associated to this physics model. More... | |
virtual void | UpdatePhysics () |
Performs extra work just before the physics update takes place. More... | |
virtual void | MoveTo (const CVector3 &c_position, const CQuaternion &c_orientation)=0 |
const SBoundingBox & | GetBoundingBox () const |
Returns an axis-aligned box that contains the physics model. More... | |
virtual void | CalculateBoundingBox ()=0 |
Calculates the axis-aligned box that contains the entire physics model. More... | |
virtual void | CalculateAnchors () |
Calculates the anchors associated to this model. More... | |
SBoundingBox & | GetBoundingBox () |
Returns an axis-aligned box that contains the physics model. More... | |
template<typename MODEL > | |
void | RegisterAnchorMethod (const SAnchor &s_anchor, void(MODEL::*pt_method)(SAnchor &)) |
Registers an anchor method. More... | |
Protected Attributes | |
std::vector< std::shared_ptr< CAbstractBody > > | m_vecBodies |
Definition at line 28 of file dynamics3d_model.h.
typedef std::map<std::string, CDynamics3DModel*> argos::CDynamics3DModel::TMap |
Definition at line 32 of file dynamics3d_model.h.
argos::CDynamics3DModel::CDynamics3DModel | ( | CDynamics3DEngine & | c_engine, |
CComposableEntity & | c_entity | ||
) |
Definition at line 99 of file dynamics3d_model.cpp.
|
inlinevirtual |
Definition at line 124 of file dynamics3d_model.h.
|
pure virtual |
|
inline |
Definition at line 150 of file dynamics3d_model.h.
|
inline |
Definition at line 136 of file dynamics3d_model.h.
|
inline |
Definition at line 140 of file dynamics3d_model.h.
|
inline |
Definition at line 128 of file dynamics3d_model.h.
|
inline |
Definition at line 132 of file dynamics3d_model.h.
|
virtual |
Returns true
if this model is colliding with another model.
true
if this model is colliding with another model. Implements argos::CPhysicsModel.
Definition at line 108 of file dynamics3d_model.cpp.
|
pure virtual |
|
pure virtual |
|
virtual |
Updates the status of the associated entity.
This method performs all the calculations to update the status of the entity associated to this model. In particular, it is in this method that anchors get updated and transfer to other engines is scheduled. This method internally calls:
Reimplemented from argos::CPhysicsModel.
Reimplemented in argos::CDynamics3DPrototypeModel.
Definition at line 148 of file dynamics3d_model.cpp.
|
inlinevirtual |
Updates the state of this model from the status of the associated entity.
This method takes the current state of the associated entity (e.g., desired wheel speed, turret rotationss, etc.) and updates the state of this model. Typically, in this method you apply forces and set speeds.
Implements argos::CPhysicsModel.
Reimplemented in argos::CDynamics3DPrototypeModel.
Definition at line 148 of file dynamics3d_model.h.
|
protected |
Definition at line 160 of file dynamics3d_model.h.