Cyclone Cyclone: cyclone::Aero Class Reference

cyclone::Aero Class Reference

A force generator that applies an aerodynamic force. More...

#include <fgen.h>

Inheritance diagram for cyclone::Aero:

Inheritance graph
[legend]
Collaboration diagram for cyclone::Aero:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Aero (const Matrix3 &tensor, const Vector3 &position, const Vector3 *windspeed)
 Creates a new aerodynamic force generator with the given properties.
virtual void updateForce (RigidBody *body, real duration)
 Applies the force to the given rigid body.

Protected Member Functions

void updateForceFromTensor (RigidBody *body, real duration, const Matrix3 &tensor)
 Uses an explicit tensor matrix to update the force on the given rigid body.

Protected Attributes

Matrix3 tensor
 Holds the aerodynamic tensor for the surface in body space.
Vector3 position
 Holds the relative position of the aerodynamic surface in body coordinates.
const Vector3windspeed
 Holds a pointer to a vector containing the windspeed of the environment.

Detailed Description

A force generator that applies an aerodynamic force.


Constructor & Destructor Documentation

cyclone::Aero::Aero const Matrix3 tensor,
const Vector3 position,
const Vector3 windspeed
 

Creates a new aerodynamic force generator with the given properties.


Member Function Documentation

virtual void cyclone::Aero::updateForce RigidBody body,
real  duration
[virtual]
 

Applies the force to the given rigid body.

Implements cyclone::ForceGenerator.

Reimplemented in cyclone::AeroControl, and cyclone::AngledAero.

void cyclone::Aero::updateForceFromTensor RigidBody body,
real  duration,
const Matrix3 tensor
[protected]
 

Uses an explicit tensor matrix to update the force on the given rigid body.

This is exactly the same as for updateForce only it takes an explicit tensor.


Member Data Documentation

Vector3 cyclone::Aero::position [protected]
 

Holds the relative position of the aerodynamic surface in body coordinates.

Matrix3 cyclone::Aero::tensor [protected]
 

Holds the aerodynamic tensor for the surface in body space.

const Vector3* cyclone::Aero::windspeed [protected]
 

Holds a pointer to a vector containing the windspeed of the environment.

This is easier than managing a separate windspeed vector per generator and having to update it manually as the wind changes.


The documentation for this class was generated from the following file: