Warning: include(php/utility.php): Failed to open stream: No such file or directory in /home/argos/argos3/doc/api/embedded/a00816_source.php on line 2

Warning: include(): Failed opening 'php/utility.php' for inclusion (include_path='.:/usr/lib64/php') in /home/argos/argos3/doc/api/embedded/a00816_source.php on line 2
The ARGoS Website

dynamics2d_stretchable_object_model.h
Go to the documentation of this file.
1 
7 #ifndef DYNAMICS2D_STRETCHABLE_OBJECT_MODEL_H
8 #define DYNAMICS2D_STRETCHABLE_OBJECT_MODEL_H
9 
10 namespace argos {
11  class CDynamics2DGrippable;
12  class CDynamics2DStretchableObjectModel;
13 }
14 
15 #include <argos3/plugins/simulator/physics_engines/dynamics2d/dynamics2d_single_body_object_model.h>
16 
17 namespace argos {
18 
19  /****************************************/
20  /****************************************/
21 
33 
34  public:
35 
37  CComposableEntity& c_entity);
38 
40 
41  virtual void MoveTo(const CVector3& c_position,
42  const CQuaternion& c_orientation);
43 
44  virtual void Reset();
45 
46  virtual void UpdateFromEntityStatus() {}
47 
48  inline Real GetMass() const {
49  return m_fMass;
50  }
51 
52  inline void SetMass(Real f_mass) {
53  m_fMass = f_mass;
54  }
55 
56  inline void SetGrippable(CDynamics2DGrippable* pc_grippable) {
57  m_pcGrippable = pc_grippable;
58  }
59 
64  void SetLinearFriction(Real f_max_bias,
65  Real f_max_force);
66 
71  void SetAngularFriction(Real f_max_bias,
72  Real f_max_force);
73 
74  private:
75 
76  Real m_fMass;
77  CDynamics2DGrippable* m_pcGrippable;
78  cpConstraint* m_ptLinearFriction;
79  cpConstraint* m_ptAngularFriction;
80  };
81 
82  /****************************************/
83  /****************************************/
84 
85 }
86 
87 #endif
A 3D vector class.
Definition: vector3.h:29
void SetAngularFriction(Real f_max_bias, Real f_max_force)
Sets the angular friction of this object.
float Real
Collects all ARGoS code.
Definition: datatypes.h:39
A stretchable and grippable object model for the dynamics 2D engine.
Basic class for an entity that contains other entities.
Base class for object models with a single body.
void SetLinearFriction(Real f_max_bias, Real f_max_force)
Sets the linear friction of this object.
virtual void MoveTo(const CVector3 &c_position, const CQuaternion &c_orientation)
The namespace containing all the ARGoS related code.
Definition: ci_actuator.h:12
CDynamics2DStretchableObjectModel(CDynamics2DEngine &c_engine, CComposableEntity &c_entity)
void SetGrippable(CDynamics2DGrippable *pc_grippable)
virtual void UpdateFromEntityStatus()
Updates the state of this model from the status of the associated entity.