15 #include <matrix/vlDcm.h>
16 #include <matrix/vlVector.h>
58 virtual const char*
type()
const;
92 virtual void computeDesiredLinearAccel(
DtVector& desiredHorizBodyAccel,
93 double& desiredYawAccel);
105 virtual void computeDesiredTopoAccelToPosition(
const double maxAccel,
const double period,
106 DtVector& desiredTopoAccel,
double& yawAccel);
113 virtual void computeDesiredTopoAccelToVelocity(
const DtVector& desiredVel,
const double period,
123 virtual double desiredHeadingWithNoMoveGoal();
127 virtual void computeDesiredTopoAccelToHeading(
const double desiredHeading,
const double desiredSpeed,
128 const double period,
DtVector& desiredTopoAccel);
133 virtual void checkLandNoFuel();
143 virtual void findEarthCurveDeltaPosition(
DtVector fromPosition,
150 virtual void limitAccelFromMaxForwardSpeed(
const DtVector& topoVelocity,
151 const double speedAtGoal,
171 virtual void limitAccelFromMaxAcceleration(
DtVector& horizBodyAccel);
177 virtual void computeTopoDeltaPosition(
DtVector& topoDeltaPosition);
182 virtual void computeTopoDesiredEndVelocity(
const DtVector& topoXyDeltaPos,
184 double& topoXyEndSpeed);
192 virtual void computeAccelerationTowardGoal(
const DtVector& topoCurrentXyVel,
193 const DtVector& topoVelDirAtGoalPt,
const double horizDesSpeedAtGoal,
194 const DtVector& horizDeltaPos,
const double period,
195 double& maxAccelTowardGoal);
200 virtual void computeAccelerationPerpendicularToGoal(
const DtVector& topoCurrentXyVel,
202 const DtVector& horizDeltaPos,
const double maxAccel,
const double delayTime,
203 double& maxAccelTowardGoal);
212 virtual void computeVerticalAcceleration(
const DtVector& topoDeltaPos,
213 const double downSpeed,
215 double& desiredZAccel);
230 virtual double accelFromConstraintsAvoidingOvershoot(
231 const double maxDecel,
const double maxAccel,
const double period,
double speed,
232 double targetDist,
const double speedAtTarget);
238 virtual bool isCloseToGoalPosition(
const DtVector& topoDeltaPos);
251 virtual void setCollectiveAndCyclicFromAccel(
const DtVector& desiredAcceleration);
253 virtual void setPedalFromDesiredYawAcceleration(
const double yawAccel);
256 virtual void setThrottle();
262 virtual DtReal terrainAvoidanceVelocity()
const;
268 virtual void calculateTargetAlignmentAngle(DtReal& alignmentAngle)
const;
272 virtual void computeYawAccelerationToHeading(
const double headingToPoint,
277 virtual void getTransformationMatrices();