#include <randomRoaming.h>

Public Member Functions | |
| randomRoaming (double areaDimension, double speed, NeighborMap *Neighbors, GlobalCoordinator *coordinator, CollisionList *CollisionRect) | |
| virtual | ~randomRoaming () |
| virtual void | move () |
| Defined in subclasses only. | |
Simulates nodes roaming the area randomly.
Definition at line 34 of file randomRoaming.h.
| randomRoaming::randomRoaming | ( | double | areaDimension, | |
| double | speed, | |||
| NeighborMap * | Neighbors, | |||
| GlobalCoordinator * | coordinator, | |||
| CollisionList * | CollisionRect | |||
| ) |
Definition at line 26 of file randomRoaming.cc.
00027 :MovementGenerator(areaDimension, speed, Neighbors, coordinator, CollisionRect) 00028 { 00029 target.x = uniform(0.0, areaDimension); 00030 target.y = uniform(0.0, areaDimension); 00031 }
| virtual randomRoaming::~randomRoaming | ( | ) | [inline, virtual] |
| void randomRoaming::move | ( | ) | [virtual] |
Defined in subclasses only.
Implements MovementGenerator.
Definition at line 33 of file randomRoaming.cc.
00034 { 00035 flock(); 00036 position += direction * speed; 00037 if(testBounds()) { 00038 position += direction * speed * 2; 00039 testBounds(); 00040 } 00041 00042 if(target.distanceSqr(position) < speed * speed) { 00043 target.x = uniform(0.0, areaDimension); 00044 target.y = uniform(0.0, areaDimension); 00045 } 00046 }
1.5.8