#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 43 of file dynamics3d_model.h.
typedef std::map<std::string, CDynamics3DModel*> argos::CDynamics3DModel::TMap |
Definition at line 47 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 139 of file dynamics3d_model.h.
|
pure virtual |
|
inline |
Definition at line 165 of file dynamics3d_model.h.
|
inline |
Definition at line 151 of file dynamics3d_model.h.
|
inline |
Definition at line 155 of file dynamics3d_model.h.
|
inline |
Definition at line 143 of file dynamics3d_model.h.
|
inline |
Definition at line 147 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, and argos::CDynamics3DEPuckModel.
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, and argos::CDynamics3DEPuckModel.
Definition at line 163 of file dynamics3d_model.h.
|
protected |
Definition at line 175 of file dynamics3d_model.h.