#include <dynamics2d_engine.h>


Public Types | |
| enum | EShapeType { SHAPE_NORMAL = 0, SHAPE_GRIPPABLE, SHAPE_GRIPPER } | 
| enum | ELayerType { LAYER_FROZEN = 0, LAYER_NORMAL = CP_ALL_LAYERS } | 
  Public Types inherited from argos::CPhysicsEngine | |
| typedef std::vector< CPhysicsEngine * > | TVector | 
| typedef std::map< std::string, CPhysicsEngine *, std::less< std::string > > | TMap | 
Public Member Functions | |
| CDynamics2DEngine () | |
| virtual | ~CDynamics2DEngine () | 
| virtual void | Init (TConfigurationNode &t_tree) | 
| Initializes the resource.  More... | |
| virtual void | Reset () | 
| Resets the resource.  More... | |
| virtual void | Update () | 
| virtual void | Destroy () | 
| Undoes whatever was done by Init().  More... | |
| virtual size_t | GetNumPhysicsModels () | 
| virtual bool | AddEntity (CEntity &c_entity) | 
| Adds an entity to the physics engine.  More... | |
| virtual bool | RemoveEntity (CEntity &c_entity) | 
| Removes an entity from the physics engine.  More... | |
| virtual void | CheckIntersectionWithRay (TEmbodiedEntityIntersectionData &t_data, const CRay3 &c_ray) const | 
| Check which objects in this engine intersect the given ray.  More... | |
| cpFloat | GetBoxLinearFriction () const | 
| cpFloat | GetBoxAngularFriction () const | 
| cpFloat | GetCylinderLinearFriction () const | 
| cpFloat | GetCylinderAngularFriction () const | 
| cpSpace * | GetPhysicsSpace () | 
| const cpSpace * | GetPhysicsSpace () const | 
| cpBody * | GetGroundBody () | 
| Real | GetElevation () const | 
| Real | GetDamping () const | 
| void | SetDamping (Real f_damping) | 
| CVector2 | GetGravity () const | 
| void | SetGravity (const CVector2 &c_gravity) | 
| void | PositionPhysicsToSpace (CVector3 &c_new_pos, const CVector3 &c_original_pos, const cpBody *pt_body) | 
| void | OrientationPhysicsToSpace (CQuaternion &c_new_orient, cpBody *pt_body) | 
| void | AddPhysicsModel (const std::string &str_id, CDynamics2DModel &c_model) | 
| void | RemovePhysicsModel (const std::string &str_id) | 
  Public Member Functions inherited from argos::CPhysicsEngine | |
| CPhysicsEngine () | |
| virtual | ~CPhysicsEngine () | 
| virtual void | PostSpaceInit () | 
| Executes extra initialization activities after the space has been initialized.  More... | |
| virtual bool | IsPointContained (const CVector3 &c_point) | 
Returns true if the given point is contained in this physics engine.  More... | |
| bool | IsEntityTransferNeeded () const | 
Returns true if this engine has entities that must be transferred to another engine.  More... | |
| bool | IsEntityTransferActive () const | 
Returns true if entity transfer is active for this engine.  More... | |
| virtual void | ScheduleEntityForTransfer (CEmbodiedEntity &c_entity) | 
| Schedules an entity of transfer.  More... | |
| virtual void | TransferEntities () | 
| Executes the transfer of entities to other engines.  More... | |
| SVolume & | GetVolume () | 
| Returns the boundary faces for the volume associated to this engine.  More... | |
| const SVolume & | GetVolume () const | 
| Returns the boundary faces for the volume associated to this engine.  More... | |
| UInt32 | GetIterations () const | 
| Returns the number of iterations per simulation clock tick.  More... | |
| Real | GetPhysicsClockTick () const | 
| Returns the length of the physics engine tick.  More... | |
| const std::string & | GetId () const | 
| Returns the id of this physics engine.  More... | |
| void | SetId (const std::string &str_id) | 
| Sets the id of this physics engine.  More... | |
  Public Member Functions inherited from argos::CBaseConfigurableResource | |
| virtual | ~CBaseConfigurableResource () | 
| Class destructor.  More... | |
Additional Inherited Members | |
  Static Public Member Functions inherited from argos::CPhysicsEngine | |
| static Real | GetSimulationClockTick () | 
| Returns the simulation clock tick.  More... | |
| static Real | GetInverseSimulationClockTick () | 
| Returns the inverse of GetSimulationClockTick().  More... | |
| static void | SetSimulationClockTick (Real f_simulation_clock_tick) | 
| Sets the simulation clock tick.  More... | |
Definition at line 42 of file dynamics2d_engine.h.
| Enumerator | |
|---|---|
| LAYER_FROZEN | |
| LAYER_NORMAL | |
Definition at line 52 of file dynamics2d_engine.h.
| Enumerator | |
|---|---|
| SHAPE_NORMAL | |
| SHAPE_GRIPPABLE | |
| SHAPE_GRIPPER | |
Definition at line 46 of file dynamics2d_engine.h.
| argos::CDynamics2DEngine::CDynamics2DEngine | ( | ) | 
Definition at line 21 of file dynamics2d_engine.cpp.
      
  | 
  inlinevirtual | 
Definition at line 59 of file dynamics2d_engine.h.
      
  | 
  virtual | 
Adds an entity to the physics engine.
Important: when you implement this function, you must also take care of adding the physics model to the associated embodied entity.
true if the entity was added, false otherwise. Implements argos::CPhysicsEngine.
Definition at line 148 of file dynamics2d_engine.cpp.
| void argos::CDynamics2DEngine::AddPhysicsModel | ( | const std::string & | str_id, | 
| CDynamics2DModel & | c_model | ||
| ) | 
Definition at line 232 of file dynamics2d_engine.cpp.
      
  | 
  virtual | 
Check which objects in this engine intersect the given ray.
| t_data | The list of entities that intersect the ray. | 
| c_ray | The test ray. | 
Implements argos::CPhysicsEngine.
Definition at line 196 of file dynamics2d_engine.cpp.
      
  | 
  virtual | 
Undoes whatever was done by Init().
Reimplemented from argos::CPhysicsEngine.
Definition at line 126 of file dynamics2d_engine.cpp.
      
  | 
  inline | 
Definition at line 77 of file dynamics2d_engine.h.
      
  | 
  inline | 
Definition at line 73 of file dynamics2d_engine.h.
      
  | 
  inline | 
Definition at line 85 of file dynamics2d_engine.h.
      
  | 
  inline | 
Definition at line 81 of file dynamics2d_engine.h.
      
  | 
  inline | 
Definition at line 105 of file dynamics2d_engine.h.
      
  | 
  inline | 
Definition at line 101 of file dynamics2d_engine.h.
      
  | 
  inline | 
Definition at line 113 of file dynamics2d_engine.h.
      
  | 
  inline | 
Definition at line 97 of file dynamics2d_engine.h.
      
  | 
  virtual | 
Implements argos::CPhysicsEngine.
Definition at line 141 of file dynamics2d_engine.cpp.
      
  | 
  inline | 
Definition at line 89 of file dynamics2d_engine.h.
      
  | 
  inline | 
Definition at line 93 of file dynamics2d_engine.h.
      
  | 
  virtual | 
Initializes the resource.
| t_tree | the base of the XML configuration tree to parse | 
| CARGoSException | if an error occurs | 
Reimplemented from argos::CPhysicsEngine.
Definition at line 34 of file dynamics2d_engine.cpp.
| void argos::CDynamics2DEngine::OrientationPhysicsToSpace | ( | CQuaternion & | c_new_orient, | 
| cpBody * | pt_body | ||
| ) | 
Definition at line 224 of file dynamics2d_engine.cpp.
| void argos::CDynamics2DEngine::PositionPhysicsToSpace | ( | CVector3 & | c_new_pos, | 
| const CVector3 & | c_original_pos, | ||
| const cpBody * | pt_body | ||
| ) | 
Definition at line 213 of file dynamics2d_engine.cpp.
      
  | 
  virtual | 
Removes an entity from the physics engine.
Important: when you implement this function, you must also take care of removing the physics model to the associated embodied entity.
true if the entity was added, false otherwise. Implements argos::CPhysicsEngine.
Definition at line 159 of file dynamics2d_engine.cpp.
| void argos::CDynamics2DEngine::RemovePhysicsModel | ( | const std::string & | str_id | ) | 
Definition at line 240 of file dynamics2d_engine.cpp.
      
  | 
  virtual | 
Resets the resource.
Reimplemented from argos::CPhysicsEngine.
Definition at line 91 of file dynamics2d_engine.cpp.
      
  | 
  inline | 
Definition at line 109 of file dynamics2d_engine.h.
      
  | 
  inline | 
Definition at line 117 of file dynamics2d_engine.h.
      
  | 
  virtual | 
Implements argos::CPhysicsEngine.
Definition at line 102 of file dynamics2d_engine.cpp.