ARGoS
3
A parallel, multi-engine simulator for swarm robotics
|
Go to the documentation of this file.
7 #ifndef POINTMASS3D_MODEL_H
8 #define POINTMASS3D_MODEL_H
11 class CPointMass3DEngine;
14 #include <argos3/core/simulator/physics_engine/physics_model.h>
15 #include <argos3/plugins/simulator/physics_engines/pointmass3d/pointmass3d_engine.h>
16 #include <argos3/core/utility/math/vector3.h>
17 #include <argos3/core/utility/math/quaternion.h>
25 typedef std::map<std::string, CPointMass3DModel*>
TMap;
39 virtual void Step() = 0;
45 const CRay3& c_ray)
const = 0;
virtual bool IsCollidingWithSomething() const
Returns true if this model is colliding with another model.
The namespace containing all the ARGoS related code.
virtual ~CPointMass3DModel()
This entity is a link to a body in the physics engine.
const CPointMass3DEngine & GetPM3DEngine() const
Returns a const reference to the physics engine controlling this model.
virtual bool CheckIntersectionWithRay(Real &f_t_on_ray, const CRay3 &c_ray) const =0
std::map< std::string, CPointMass3DModel * > TMap
An anchor related to the body of an entity.
virtual void UpdateFromEntityStatus()=0
Updates the state of this model from the status of the associated entity.
virtual void MoveTo(const CVector3 &c_position, const CQuaternion &c_orientation)
CVector3 m_cAcceleration
The acceleration of this model in the engine.
CPointMass3DEngine & m_cPM3DEngine
Reference to the physics engine.
CVector3 m_cVelocity
The linear velocity of this model in the engine.
CVector3 m_cPosition
The position of the model in this engine.
virtual void UpdateOriginAnchor(SAnchor &s_anchor)
Updates the origin anchor associated to the embodied entity.
CPointMass3DModel(CPointMass3DEngine &c_engine, CEmbodiedEntity &c_entity)
float Real
Collects all ARGoS code.
CPointMass3DEngine & GetPM3DEngine()
Returns a reference to the physics engine controlling this model.