WSF
wsf::six_dof::Route Class Reference

#include <WsfSixDOF_Route.hpp>

Classes

struct  sRouteSegment

Public Member Functions

 Route ()=default
RouteClone () const
 ~Route ()=default
const WaypointGetFirstElement () const
const WaypointGetNextWaypoint (const Waypoint *aWaypoint) const
const WaypointGetWaypointAtIndex (size_t aIndex) const
size_t GetWaypointIndex (const Waypoint *aWaypoint) const
void AddWaypointToRouteEnd (std::unique_ptr< Waypoint > &aWaypoint)
void AddWaypointToRouteStart (std::unique_ptr< Waypoint > &aWaypoint)
size_t GetNumberOfWaypoints () const
const std::vector< std::unique_ptr< Waypoint > > & GetRoute () const
void ComputeSegmentMap ()
void AddSegment (Waypoint *aWaypoint, std::unique_ptr< sRouteSegment > &aSegment)
sRouteSegmentGetRouteSegment (const Waypoint *aWaypoint) const

Static Public Member Functions

static void CalcAimHeadingAndBankAngle (const Waypoint *aPrevWpt, const Waypoint *aCurrWpt, const Waypoint *aNextWpt, const sRouteSegment *aCurrSegment, const sRouteSegment *aNextSegment, const UtLLAPos &aCurrentPos_lla, const UtVec2d &aCurrentVel_mps, CommonController::WaypointNavData &aNavData, double aTurnRollInMultiplier, double aRouteAllowableAngleError_rad, double aHeading_rad, double aSpeed_mps, double aMaxBankAngle_rad, double aMaxBankRate_rad_s, double aMaxG_g, double aDeltaT_sec, bool &aAchievedWaypoint)
static void CalcYawAimHeadingAngle (const Waypoint *aPrevWpt, const Waypoint *aCurrWpt, const Waypoint *aNextWpt, const sRouteSegment *aCurrSegment, const sRouteSegment *aNextSegment, const UtLLAPos &aCurrentPos_lla, const UtVec2d &aCurrentVel_mps, CommonController::WaypointNavData &aNavData, double aRouteAllowableAngleError_rad, double aHeading_rad, double aSpeed_mps, double aMaxG_g, double aDeltaT_sec, bool &aAchievedWaypoint)
static void CalcTaxiAimHeadingAngle (const Waypoint *aPrevWpt, const Waypoint *aCurrWpt, const Waypoint *aNextWpt, const sRouteSegment *aCurrSegment, const sRouteSegment *aNextSegment, const UtLLAPos &aCurrentPos_lla, const UtVec2d &aCurrentVel_mps, CommonController::WaypointNavData &aNavData, float aHeading_rad, double aTurnRadius_ft, double aDeltaT_sec, bool &aAchievedWaypoint)
static void CalcVerticalSpeed (CommonController::WaypointNavData &aNavData)
static double GetInitialHeading_rad (const UtLLAPos &aLLAStart, const UtLLAPos &aLLAEnd)
static double GetTurnRadius_m (double aSpeed_mps, double aBankAngle_rad)
static double GetTurnRadiusFromLateralG_m (double aSpeed_mps, double aLateralG_g)
static double GetTurnLeadDistance_m (double aTurnAngle_rad, double aTurnRadius_m)
static double GetDistanceBetweenWaypoints_m (const UtLLAPos &aStartLLA, const UtLLAPos &aEndLLA, double &aStartHdg_rad, double &aEndHdg_rad)
static std::unique_ptr< sRouteSegmentCalcSegmentGeometry (const Waypoint *aPrevWpt, const Waypoint *aCurrWpt)
static bool PassedWaypoint (float aDT, const CommonController::WaypointNavData &aNavData)
static bool AchievedWaypoint (float aDT, const CommonController::WaypointNavData &aNavData, const Waypoint *aWaypoint, const Waypoint *aNextWaypoint)

Constructor & Destructor Documentation

◆ Route()

wsf::six_dof::Route::Route ( )
default

References Clone(), and Route().

Referenced by Clone(), and Route().

◆ ~Route()

wsf::six_dof::Route::~Route ( )
default

Member Function Documentation

◆ AchievedWaypoint()

◆ AddSegment()

void wsf::six_dof::Route::AddSegment ( Waypoint * aWaypoint,
std::unique_ptr< sRouteSegment > & aSegment )

◆ AddWaypointToRouteEnd()

void wsf::six_dof::Route::AddWaypointToRouteEnd ( std::unique_ptr< Waypoint > & aWaypoint)

◆ AddWaypointToRouteStart()

void wsf::six_dof::Route::AddWaypointToRouteStart ( std::unique_ptr< Waypoint > & aWaypoint)

◆ CalcAimHeadingAndBankAngle()

void wsf::six_dof::Route::CalcAimHeadingAndBankAngle ( const Waypoint * aPrevWpt,
const Waypoint * aCurrWpt,
const Waypoint * aNextWpt,
const sRouteSegment * aCurrSegment,
const sRouteSegment * aNextSegment,
const UtLLAPos & aCurrentPos_lla,
const UtVec2d & aCurrentVel_mps,
CommonController::WaypointNavData & aNavData,
double aTurnRollInMultiplier,
double aRouteAllowableAngleError_rad,
double aHeading_rad,
double aSpeed_mps,
double aMaxBankAngle_rad,
double aMaxBankRate_rad_s,
double aMaxG_g,
double aDeltaT_sec,
bool & aAchievedWaypoint )
static

◆ CalcSegmentGeometry()

◆ CalcTaxiAimHeadingAngle()

◆ CalcVerticalSpeed()

◆ CalcYawAimHeadingAngle()

void wsf::six_dof::Route::CalcYawAimHeadingAngle ( const Waypoint * aPrevWpt,
const Waypoint * aCurrWpt,
const Waypoint * aNextWpt,
const sRouteSegment * aCurrSegment,
const sRouteSegment * aNextSegment,
const UtLLAPos & aCurrentPos_lla,
const UtVec2d & aCurrentVel_mps,
CommonController::WaypointNavData & aNavData,
double aRouteAllowableAngleError_rad,
double aHeading_rad,
double aSpeed_mps,
double aMaxG_g,
double aDeltaT_sec,
bool & aAchievedWaypoint )
static

◆ Clone()

wsf::six_dof::Route * wsf::six_dof::Route::Clone ( ) const

References Route().

Referenced by Route().

◆ ComputeSegmentMap()

void wsf::six_dof::Route::ComputeSegmentMap ( )

◆ GetDistanceBetweenWaypoints_m()

double wsf::six_dof::Route::GetDistanceBetweenWaypoints_m ( const UtLLAPos & aStartLLA,
const UtLLAPos & aEndLLA,
double & aStartHdg_rad,
double & aEndHdg_rad )
static

◆ GetFirstElement()

const wsf::six_dof::Waypoint * wsf::six_dof::Route::GetFirstElement ( ) const

◆ GetInitialHeading_rad()

◆ GetNextWaypoint()

const wsf::six_dof::Waypoint * wsf::six_dof::Route::GetNextWaypoint ( const Waypoint * aWaypoint) const

◆ GetNumberOfWaypoints()

size_t wsf::six_dof::Route::GetNumberOfWaypoints ( ) const

◆ GetRoute()

const std::vector< std::unique_ptr< Waypoint > > & wsf::six_dof::Route::GetRoute ( ) const
inline

◆ GetRouteSegment()

wsf::six_dof::Route::sRouteSegment * wsf::six_dof::Route::GetRouteSegment ( const Waypoint * aWaypoint) const

◆ GetTurnLeadDistance_m()

double wsf::six_dof::Route::GetTurnLeadDistance_m ( double aTurnAngle_rad,
double aTurnRadius_m )
static

◆ GetTurnRadius_m()

double wsf::six_dof::Route::GetTurnRadius_m ( double aSpeed_mps,
double aBankAngle_rad )
static

◆ GetTurnRadiusFromLateralG_m()

double wsf::six_dof::Route::GetTurnRadiusFromLateralG_m ( double aSpeed_mps,
double aLateralG_g )
static

Referenced by CalcYawAimHeadingAngle().

◆ GetWaypointAtIndex()

const wsf::six_dof::Waypoint * wsf::six_dof::Route::GetWaypointAtIndex ( size_t aIndex) const

◆ GetWaypointIndex()

size_t wsf::six_dof::Route::GetWaypointIndex ( const Waypoint * aWaypoint) const

◆ PassedWaypoint()

bool wsf::six_dof::Route::PassedWaypoint ( float aDT,
const CommonController::WaypointNavData & aNavData )
static

The documentation for this class was generated from the following files:
Copyrights Multiple, All Rights Reserved