#include <iso_flock_acceleration_behavior.h>
Inherits iso::flock::Behavior.
Inheritance diagram for iso::flock::AccelerationBehavior:
Public Member Functions | |
AccelerationBehavior (const base::String &pInputParameterString, const base::String &pOutputParameterString) | |
create behavior | |
AccelerationBehavior (Agent *pAgent, const base::String &pBehaviorName, const base::String &pInputParameterString, const base::String &pOutputParameterString) throw (FlockException) | |
create behavior | |
~AccelerationBehavior () | |
destructor | |
virtual Behavior * | create (const base::String &pBehaviorName, Agent *pAgent) const throw (FlockException) |
create copy of behavior | |
virtual Behavior * | create (const base::String &pInputParameterString, const base::String &pOutputParameterString) const |
create copy of behavior | |
virtual void | act () |
perform behavior action | |
Protected Attributes | |
Parameter * | mMassPar |
Parameter * | mVelocityPar |
mass parameter (input) | |
Parameter * | mForcePar |
velocity parameter (input) | |
Parameter * | mAcceleration |
force parameter (input) | |
Parameter * | mMaxLinearAccelerationPar |
acceleration parameter (output) | |
Parameter * | mMaxAngularAccelerationPar |
maximum linear acceleration parameter (internal) | |
math::Vector< real > | mPrefAccel |
maximum angular acceleration parameter (internal) | |
math::Vector< real > | mLinearAccel |
preferred acceleration | |
math::Vector< real > | mAngularAccel |
linear acceleration |
Behavior for calculating an Agent 's acceleration from a force acting on it.
can limit the resulting acceleration by clamping its linear and angular components.
Input Parameter:
type: mass dim: 1D neighbors: ignore
type: velocity dim: nD neighbors: ignore
type: force dim: nD neighbors: ignore
Output Parameter:
type: acceleration dim: nD write: replace
Internal Parameter:
name: xxx_maxLinearAcceleration dim: 1D defaultValue: 0.5
name: xxx_maxAngularAcceleration dim: 1D defaultValue: 0.5
name: xxx_active dim: 1D defaultValue: 1.0
Created by Daniel Bisig on 4/17/07.
AccelerationBehavior::AccelerationBehavior | ( | const base::String & | pInputParameterString, | |
const base::String & | pOutputParameterString | |||
) |
create behavior
pInputParameterString | input parameter string (parameters are space separated) | |
pOutputParameterString | output paramaters are space separated) |
AccelerationBehavior::AccelerationBehavior | ( | Agent * | pAgent, | |
const base::String & | pBehaviorName, | |||
const base::String & | pInputParameterString, | |||
const base::String & | pOutputParameterString | |||
) | throw (FlockException) |
create behavior
pAgent | agent this behavior belongs to | |
pBehaviorName | name of behavior | |
pInputParameterString | input parameter string (parameters are space separated) | |
pOutputParameterString | output paramaters are space separated) |
FlockException | wrong number of type of parameters |
AccelerationBehavior::~AccelerationBehavior | ( | ) |
destructor
Behavior * AccelerationBehavior::create | ( | const base::String & | pBehaviorName, | |
Agent * | pAgent | |||
) | const throw (FlockException) [virtual] |
create copy of behavior
pAgent | agent this behavior belongs to | |
pBehaviorName | name of behavior |
FlockException | wrong number of type of parameters |
Implements iso::flock::Behavior.
Behavior * AccelerationBehavior::create | ( | const base::String & | pInputParameterString, | |
const base::String & | pOutputParameterString | |||
) | const [virtual] |
create copy of behavior
pInputParameterString | input parameter string | |
pOutputParameterString | output parameter string |
Implements iso::flock::Behavior.
void AccelerationBehavior::act | ( | ) | [virtual] |
Parameter* iso::flock::AccelerationBehavior::mMassPar [protected] |
Parameter* iso::flock::AccelerationBehavior::mVelocityPar [protected] |
mass parameter (input)
Parameter* iso::flock::AccelerationBehavior::mForcePar [protected] |
velocity parameter (input)
Parameter* iso::flock::AccelerationBehavior::mAcceleration [protected] |
force parameter (input)
acceleration parameter (output)
maximum linear acceleration parameter (internal)
math::Vector<real> iso::flock::AccelerationBehavior::mPrefAccel [protected] |
maximum angular acceleration parameter (internal)
math::Vector<real> iso::flock::AccelerationBehavior::mLinearAccel [protected] |
preferred acceleration
math::Vector<real> iso::flock::AccelerationBehavior::mAngularAccel [protected] |
linear acceleration