Menge Plugin Examples
A Collection of Example Plugins for the Menge Framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
GCFAgent.h
Go to the documentation of this file.
1 
7 #ifndef __GCF_AGENT_H__
8 #define __GCF_AGENT_H__
9 
10 #include "BaseAgent.h"
11 #include "Ellipse.h"
12 
13 using namespace Menge;
14 
15 namespace GCF {
19  class Agent : public Agents::BaseAgent {
20  public:
24  Agent();
25 
29  ~Agent();
30 
34  void initialize();
35 
42  void update( float timeStep );
43 
47  void computeNewVelocity();
48 
58  float getRadius() const {
59  return _ellipse.getMinor();
60  }
61 
66  void setRadius( float radius ) {}
67 
71  void setStrideParameters( float factor, float buffer ) {}
72 
73 
74  // Purely internal parameters -- not set by user
75 
80 
81  // User-defined parameters
82 
86  float _aMin;
87 
91  float _aRate;
92 
98  float _bMax;
99 
103  float _bGrowth;
104 
105  protected:
106 
113  float computeDistanceResponse( float effDist );
114 
118  void updateEllipse();
119  };
120 } // namespace GCF
121 #endif
Contains the specification of the generalized centrifugal force pedestrian model. ...
Definition: Ellipse.cpp:9
float getRadius() const
Used in FSM machinery to determine clearance.
Definition: GCFAgent.h:58
float _aMin
Minimum ellipse size in facing direction.
Definition: GCFAgent.h:86
Ellipse _ellipse
The ellipse representing the agent's volume.
Definition: GCFAgent.h:79
float _bMax
The maximum ellipse width for slow movement This is a bad formulation, because when speed is zero...
Definition: GCFAgent.h:98
Definition of an ellipse.
Definition: Ellipse.h:24
The specification of the generalized centrifugal force model agent.
Definition: GCFAgent.h:19
void setStrideParameters(float factor, float buffer)
Stub function to make compatible with the fsm machinery.
Definition: GCFAgent.h:71
float _aRate
Rate at which ellipse major axis grows w.r.t. speed.
Definition: GCFAgent.h:91
Definition of ellipse geometry and queries.
void setRadius(float radius)
Stub function to make compatible with the fsm machinery TODO: Determine if I need this – I believe I...
Definition: GCFAgent.h:66
float _bGrowth
The maximum increase of ellipse size in perpendicular direction.
Definition: GCFAgent.h:103