|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface IDynamicState
Defines methods required by a dynamic state of an object. The orientation and
position relate object coordinates to world coordinates. Units should be
consistent: mass, length, time. Typically acelerations are the only inputs,
both for position and orientation, using the addXAcceleration()
methods.
Method Summary | |
---|---|
void |
addAcceleration(Vector acceleration)
Add a positional acceleration. |
void |
addAngularAcceleration(Quaternion angularAcceleration)
Add an angular acceleration. |
void |
addMassAcceleration(double massAcceleration)
Add a mass velocity rate of change. |
void |
applyForce(Vector force)
Apply the given force through the center of mass to this object. |
void |
applyForce(Vector force,
Vector position)
Apply the given force at the given position to this object. |
void |
applyForceLocal(Vector force,
Vector position)
Apply the given force at the given position to this object where these vectors are expressed in local coordinates. |
Vector |
getAcceleration()
Return the acceleration in length time^-2 units. |
Quaternion |
getAngularAcceleration()
Return the angular acceleration in radians time^-2 units. |
Quaternion |
getAngularVelocity()
Return the angular velocity in radians time^-1 units. |
double |
getMass()
Return the mass in mass units. |
double |
getMassAcceleration()
Return the mass velocity rate of change in mass time^-2 units. |
double |
getMassVelocity()
Return the mass rate of change in mass time^-1 units. |
double[] |
getMomentOfInertia()
Return the moment of inertia in mass length^2 units. |
Vector |
getVelocity()
Return the velocity in length time^-1 units. |
void |
setAcceleration(Vector acceleration)
Set the acceleration. |
void |
setAngularAcceleration(Quaternion angularAcceleration)
Set the angular acceleration. |
void |
setAngularVelocity(Quaternion angularVelocity)
Set the angular velocity. |
void |
setMass(double mass)
Set the mass. |
void |
setMassAcceleration(double massAcceleration)
Set the mass velocity rate of change. |
void |
setMassVelocity(double massVelocity)
Set the mass rate of change. |
void |
setMomentOfInertia(double[] momentOfInertia)
Set the moment of inertia. |
void |
setVelocity(Vector velocity)
Set the velocity. |
String |
toString()
Return a string representation of this object. |
void |
zeroAcceleration()
Zero the acceleration. |
void |
zeroAngularAcceleration()
Zero the angular acceleration. |
void |
zeroAngularMotion()
Zero all angular motion. |
void |
zeroMassAcceleration()
Zero the mass acceleration. |
void |
zeroMotion()
Zero all motion. |
void |
zeroTranslationalMotion()
Zero all translational motion. |
Methods inherited from interface org.vizzini.math.IState |
---|
clone, convertLocalToWorld, convertWorldToLocal, getOrientation, getPosition, getPreviousPosition, move, orientLocalToWorld, orientWorldToLocal, rotate, setOrientation, setPosition |
Method Detail |
---|
void addAcceleration(Vector acceleration)
acceleration
- Acceleration vector in length time^-2 units.void addAngularAcceleration(Quaternion angularAcceleration)
angularAcceleration
- Angular acceleration in radians time^-2
units.void addMassAcceleration(double massAcceleration)
massAcceleration
- Mass acceleration in mass time^-2 units.void applyForce(Vector force)
force
- Force vector in world coordinates in mass length time^-2
units.void applyForce(Vector force, Vector position)
force
- Force vector in world coordinates in mass length
time^-2 units.position
- Position of applied force relative to the center of
mass in world coordinates in length units.void applyForceLocal(Vector force, Vector position)
force
- Force vector in local coordinates in mass length
time^-2 units.position
- Position of applied force relative to the center of
mass in local coordinates in length units.Vector getAcceleration()
Quaternion getAngularAcceleration()
Quaternion getAngularVelocity()
double getMass()
double getMassAcceleration()
double getMassVelocity()
double[] getMomentOfInertia()
Vector getVelocity()
void setAcceleration(Vector acceleration)
acceleration
- Acceleration vector in length time^-2 units.void setAngularAcceleration(Quaternion angularAcceleration)
angularAcceleration
- Angular acceleration in radians time^-2
units.void setAngularVelocity(Quaternion angularVelocity)
angularVelocity
- Angular velocity in radians time^-1 units.void setMass(double mass)
mass
- Mass in mass units.void setMassAcceleration(double massAcceleration)
massAcceleration
- Mass velocity rate of change in mass time^-2
units.void setMassVelocity(double massVelocity)
massVelocity
- Mass velocity in mass time^-1 units.void setMomentOfInertia(double[] momentOfInertia)
momentOfInertia
- Moment of intertia in mass length^2 units.void setVelocity(Vector velocity)
velocity
- Velocity vector in length time^-1 units.String toString()
toString
in class Object
void zeroAcceleration()
void zeroAngularAcceleration()
void zeroAngularMotion()
void zeroMassAcceleration()
void zeroMotion()
void zeroTranslationalMotion()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright © 2007 Vizzini.org. All Rights Reserved. | 2007.12.25.03.00.02 |