Class: SmoothingPathCalculator
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:134
Handles the calculation of the VNAV flight path for Path Smoothing VNAV Implementations.
Implements
Constructors
Constructor
new SmoothingPathCalculator(
bus
,flightPlanner
,primaryPlanIndex
,options?
):SmoothingPathCalculator
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:207
Creates an instance of SmoothingPathCalculator.
Parameters
Parameter | Type | Description |
---|---|---|
bus | EventBus | The EventBus to use with this instance. |
flightPlanner | FlightPlanner | The flight planner to use with this instance. |
primaryPlanIndex | number | The primary flight plan index to use to calculate a path from. |
options? | SmoothingPathCalculatorOptions | Options for the calculator. |
Returns
SmoothingPathCalculator
Properties
applyPathValuesResult
protected
readonly
applyPathValuesResult: [undefined
|number
,number
]
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:198
bus
protected
readonly
bus:EventBus
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:208
The EventBus to use with this instance.
directToLegOffset
protected
readonly
directToLegOffset:number
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:172
flightPathAngle
flightPathAngle:
number
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:148
The default flight path angle, in degrees, for descent paths. Increasingly positive values indicate steeper descents.
Implementation of
VNavPathCalculator
.flightPathAngle
flightPlanner
protected
readonly
flightPlanner:FlightPlanner
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:209
The flight planner to use with this instance.
forceFirstApproachAtConstraint
protected
readonly
forceFirstApproachAtConstraint:boolean
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:170
index
readonly
index:number
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:145
This calculator's VNAV index.
invalidateClimbConstraintFunc()
protected
invalidateClimbConstraintFunc: (constraint
,index
,constraints
,firstDescentConstraintIndex
,priorMinAltitude
,priorMaxAltitude
) =>boolean
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:178
Parameters
Parameter | Type |
---|---|
constraint | VNavConstraint |
index | number |
constraints | readonly VNavConstraint [] |
firstDescentConstraintIndex | number |
priorMinAltitude | number |
priorMaxAltitude | number |
Returns
boolean
invalidateDescentConstraintFunc()
protected
invalidateDescentConstraintFunc: (constraint
,index
,constraints
,priorMinAltitude
,priorMaxAltitude
,requiredFpa
,maxFpa
) =>boolean
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:187
Parameters
Parameter | Type |
---|---|
constraint | VNavConstraint |
index | number |
constraints | readonly VNavConstraint [] |
priorMinAltitude | number |
priorMaxAltitude | number |
requiredFpa | number |
maxFpa | number |
Returns
boolean
isLegEligibleFunc()
protected
isLegEligibleFunc: (lateralLeg
) =>boolean
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:174
Parameters
Parameter | Type |
---|---|
lateralLeg | LegDefinition |
Returns
boolean
legAltitudes
protected
readonly
legAltitudes: [number
,number
]
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:197
maxFlightPathAngle
maxFlightPathAngle:
number
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:162
The maximum allowed flight path angle, in degrees, for descent paths. Increasingly positive values indicate steeper descents. Paths that require angles greater than the maximum value will have their FPAs clamped to the maximum value, even if this would create a discontinuity in the vertical profile.
Implementation of
VNavPathCalculator
.maxFlightPathAngle
minFlightPathAngle
minFlightPathAngle:
number
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:155
The minimum allowed flight path angle, in degrees, for descent paths. Increasingly positive values indicate steeper descents. Paths that require angles less than the minimum value will be assigned the default flight path angle instead to create a step-down descent. Vertical direct-to paths are exempt from the minimum FPA requirement.
planBuilt
readonly
planBuilt:ReadonlySubEvent
<this
,number
>
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:165
An event fired when a vertical plan has been built or rebuilt, with the index of the plan as the event data.
Implementation of
primaryPlanIndex
protected
readonly
primaryPlanIndex:number
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:210
The primary flight plan index to use to calculate a path from.
shouldUseConstraintFunc()
protected
shouldUseConstraintFunc: (lateralPlan
,lateralLeg
,globalLegIndex
,segment
,segmentLegIndex
) =>boolean
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:176
Parameters
Parameter | Type |
---|---|
lateralPlan | FlightPlan |
lateralLeg | LegDefinition |
globalLegIndex | number |
segment | FlightPlanSegment |
segmentLegIndex | number |
Returns
boolean
verticalFlightPlans
protected
readonly
verticalFlightPlans: (undefined
|VerticalFlightPlan
)[] =[]
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:142
The Vertical Flight Plans managed by this Path Calculator
vnavCalculated
readonly
vnavCalculated:ReadonlySubEvent
<this
,number
>
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:168
An event fired when a path has been calculated, with the index of the plan as the event data.
Implementation of
VNavPathCalculator
.vnavCalculated
DEFAULT_DEFAULT_FPA
protected
readonly
static
DEFAULT_DEFAULT_FPA:3
=3
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:135
DEFAULT_DIRECT_TO_LEG_OFFSET
protected
readonly
static
DEFAULT_DIRECT_TO_LEG_OFFSET:3
=3
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:139
DEFAULT_MAX_FPA
protected
readonly
static
DEFAULT_MAX_FPA:6
=6
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:137
DEFAULT_MIN_FPA
protected
readonly
static
DEFAULT_MIN_FPA:1.5
=1.5
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:136
Methods
activateVerticalDirect()
activateVerticalDirect(
planIndex
,constraintGlobalLegIndex
,fpa?
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:502
Activates a vertical direct to a constraint index.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The vertical flight plan index. |
constraintGlobalLegIndex | number | The global leg index of the constraint to go direct to. |
fpa? | number | - |
Returns
void
Implementation of
VNavPathCalculator
.activateVerticalDirect
buildConstraint()
protected
buildConstraint(verticalPlan
,globalLegIndex
,lateralLeg
,constraintAltitudes
,name
):VNavConstraint
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:751
Builds a VNAV constraint for a lateral flight plan leg.
Parameters
Parameter | Type | Description |
---|---|---|
verticalPlan | VerticalFlightPlan | The vertical flight plan. |
globalLegIndex | number | The global index of the lateral flight plan leg for which to build the constraint. |
lateralLeg | LegDefinition | The lateral flight plan leg for which to build the constraint. |
constraintAltitudes | [number , number ] | The constraint altitudes, as [minimum_altitude, maximum_altitude] . |
name | string | The name of the new constraint. |
Returns
A new VNAV constraint for the specified lateral flight plan leg.
buildVerticalFlightPlan()
protected
buildVerticalFlightPlan(lateralPlan
,verticalPlan
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:639
Builds a vertical flight plan from a lateral flight plan.
Parameters
Parameter | Type | Description |
---|---|---|
lateralPlan | FlightPlan | The lateral flight plan. |
verticalPlan | VerticalFlightPlan | The vertical flight plan to build. |
Returns
void
buildVerticalFlightPlanAndComputeAndNotify()
protected
buildVerticalFlightPlanAndComputeAndNotify(planIndex
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:596
Builds a vertical flight plan if its corresponding lateral flight plan has been changed since the last rebuild, then computes the vertical path sends events notifying subscribers that the plan was built and calculated.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The index of the plan to build and compute. |
Returns
void
buildVerticalFlightPlanAndNotify()
protected
buildVerticalFlightPlanAndNotify(lateralPlan
,verticalPlan
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:629
Builds a vertical flight plan from a lateral flight plan and sends an event notifying subscribers that the plan was built.
Parameters
Parameter | Type | Description |
---|---|---|
lateralPlan | FlightPlan | The lateral flight plan. |
verticalPlan | VerticalFlightPlan | The vertical flight plan to build. |
Returns
void
buildVerticalLegsAndConstraints()
protected
buildVerticalLegsAndConstraints(lateralPlan
,verticalPlan
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:650
Resets the Vertical Flight Plan, populates the vertical segments and legs, finds and builds the vertical constraints.
Parameters
Parameter | Type | Description |
---|---|---|
lateralPlan | FlightPlan | The Lateral Flight Plan. |
verticalPlan | VerticalFlightPlan | The Vertical Flight Plan. |
Returns
void
cancelVerticalDirect()
cancelVerticalDirect(
planIndex
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:520
Cancels the existing VNAV direct-to for a vertical flight plan.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The index of the vertical flight plan for which to cancel the VNAV direct-to. |
Returns
void
computeDescentPath()
protected
computeDescentPath(lateralPlan
,verticalPlan
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:809
Computes the descent path for a flight plan.
Parameters
Parameter | Type | Description |
---|---|---|
lateralPlan | FlightPlan | The lateral flight plan for which to compute a path. |
verticalPlan | VerticalFlightPlan | The vertical flight plan for which to compute a path. |
Returns
void
computeFlightPathAngles()
protected
computeFlightPathAngles(verticalPlan
):boolean
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1110
Computes the flight path angles for each constraint segment.
Parameters
Parameter | Type | Description |
---|---|---|
verticalPlan | VerticalFlightPlan | The Vertical Flight Plan. |
Returns
boolean
Whether the flight path angles were computed.
computePath()
protected
computePath(lateralPlan
,verticalPlan
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:800
Computes the vertical path for a flight plan.
Parameters
Parameter | Type | Description |
---|---|---|
lateralPlan | FlightPlan | The lateral flight plan for which to compute a path. |
verticalPlan | VerticalFlightPlan | The vertical flight plan for which to compute a path. |
Returns
void
computePathAndNotify()
protected
computePathAndNotify(lateralPlan
,verticalPlan
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:790
Computes the vertical path for a flight plan and sends an event notifying subscribers that the plan was calculated.
Parameters
Parameter | Type | Description |
---|---|---|
lateralPlan | FlightPlan | The lateral flight plan for which to compute a path. |
verticalPlan | VerticalFlightPlan | The vertical flight plan for which to compute a path. |
Returns
void
createVerticalPlan()
createVerticalPlan(
planIndex
):VerticalFlightPlan
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:259
Creates an empty vertical plan at a specified index.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The Vertical Plan Index to create. |
Returns
The newly created Vertical Plan.
Implementation of
VNavPathCalculator
.createVerticalPlan
fillLegDistances()
protected
fillLegDistances(lateralPlan
,verticalPlan
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:877
Fills the VNAV plan leg and constraint segment distances.
Parameters
Parameter | Type | Description |
---|---|---|
lateralPlan | FlightPlan | The Lateral Flight Plan. |
verticalPlan | VerticalFlightPlan | The Vertical Flight Plan. |
Returns
void
findAndRemoveInvalidConstraints()
protected
findAndRemoveInvalidConstraints(verticalPlan
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:913
Finds and removes invalid constraints from the vertical plan.
Parameters
Parameter | Type | Description |
---|---|---|
verticalPlan | VerticalFlightPlan | The Vertical Flight Plan. |
Returns
void
getCurrentConstraintAltitude()
getCurrentConstraintAltitude(
planIndex
,globalLegIndex
):undefined
|number
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:387
Gets and returns the current constraint altitude in meters.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The vertical flight plan index. |
globalLegIndex | number | The global index of the leg for which to get the current constraint. |
Returns
undefined
| number
The current constraint altitude in meters, or undefined
if there is no current constraint.
Implementation of
VNavPathCalculator
.getCurrentConstraintAltitude
getCurrentConstraintDetails()
getCurrentConstraintDetails(
planIndex
,globalLegIndex
):AltitudeConstraintDetails
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:410
Gets and returns the current constraint details.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The vertical flight plan index. |
globalLegIndex | number | is the global leg index to check. |
Returns
the VNavConstraintDetails.
Implementation of
VNavPathCalculator
.getCurrentConstraintDetails
getFirstDescentConstraintAltitude()
getFirstDescentConstraintAltitude(
planIndex
):undefined
|number
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1462
Gets the first VNAV Constraint Altitude.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The vertical flight plan index. |
Returns
undefined
| number
The first VNAV constraint altitude in the plan.
Implementation of
VNavPathCalculator
.getFirstDescentConstraintAltitude
getFlightPhase()
getFlightPhase(
planIndex
):VerticalFlightPhase
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:369
Gets and returns the Current Vertical Flight Phase.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The vertical flight plan index. |
Returns
the VerticalFlightPhase.
Implementation of
VNavPathCalculator
.getFlightPhase
getNextConstraintAltitude()
getNextConstraintAltitude(
planIndex
,globalLegIndex
):undefined
|number
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:437
Gets and returns the next constraint altitude in meters.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The vertical flight plan index. |
globalLegIndex | number | The global index of the leg for which to get the next constraint. |
Returns
undefined
| number
The next constraint altitude in meters or undefined
if there is no next constraint.
Implementation of
VNavPathCalculator
.getNextConstraintAltitude
getNextRestrictionForFlightPhase()
getNextRestrictionForFlightPhase(
planIndex
,activeLateralLeg
):undefined
|VNavConstraint
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:463
Gets the next altitude limit for the current phase of flight. (used to calculate the required VS and is not always the next constraint) In descent, this will return the next above altitude in the vertical plan. In climb, this will return the next below altitude in the vertical plan.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The vertical flight plan index. |
activeLateralLeg | number | The current active lateral leg. |
Returns
undefined
| VNavConstraint
The VNavConstraint not to exceed appropriate to the current phase of flight, or undefined if one does not exist.
Implementation of
VNavPathCalculator
.getNextRestrictionForFlightPhase
getTargetAltitude()
getTargetAltitude(
planIndex
,globalLegIndex
):undefined
|number
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:360
Gets the VNAV target altitude for a flight plan leg.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The flight plan index. |
globalLegIndex | number | The global index of the flight plan leg. |
Returns
undefined
| number
The VNAV target altitude for the specified flight plan leg, or undefined
if none exists.
Implementation of
VNavPathCalculator
.getTargetAltitude
getTargetConstraint()
getTargetConstraint(
planIndex
,globalLegIndex
):undefined
|VNavConstraint
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:354
Gets the VNAV constraint defining the target VNAV altitude for a flight plan leg.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The flight plan index. |
globalLegIndex | number | The global index of the flight plan leg. |
Returns
undefined
| VNavConstraint
The VNAV constraint defining the target VNAV altitude for a flight plan leg, or undefined
if one could
not be found.
Implementation of
VNavPathCalculator
.getTargetConstraint
getTargetConstraintIndex()
getTargetConstraintIndex(
planIndex
,globalLegIndex
):number
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:301
Gets the index of the VNAV constraint defining the target VNAV altitude for a flight plan leg.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The flight plan index. |
globalLegIndex | number | The global index of the flight plan leg. |
Returns
number
The index of the VNAV constraint defining the target VNAV altitude for a flight plan leg, or -1
if one
could not be found.
Implementation of
VNavPathCalculator
.getTargetConstraintIndex
getVerticalFlightPlan()
getVerticalFlightPlan(
planIndex
):VerticalFlightPlan
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:254
Gets a vertical flight plan by index, or throws not found if the plan does not exist.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The vertical flight plan index. |
Returns
The requested vertical flight plan.
Throws
Not found if the flight plan index is not valid.
Implementation of
VNavPathCalculator
.getVerticalFlightPlan
notifyBuilt()
protected
notifyBuilt(planIndex
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:611
Sends an event notifying subscribers that a vertical flight plan was built or rebuilt.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The index of the plan that was built. |
Returns
void
notifyCalculated()
protected
notifyCalculated(planIndex
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:619
Sends an event notifying subscribers that a vertical flight plan was calculated.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The index of the plan that was calculated. |
Returns
void
onPlanCalculated()
protected
onPlanCalculated(event
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:587
Method fired on a flight plan change event to rebuild the vertical path.
Parameters
Parameter | Type | Description |
---|---|---|
event | FlightPlanCalculatedEvent | The Flight Plan Calculated Event |
Returns
void
onPlanChanged()
protected
onPlanChanged(planIndex
,legChangeEvent?
,segmentChangeEvent?
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:560
Sets planChanged to true to flag that a plan change has been received over the bus.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The Plan Index that changed. |
legChangeEvent? | FlightPlanLegEvent | The FlightPlanLegEvent, if any. |
segmentChangeEvent? | FlightPlanSegmentEvent | The FlightPlanSegmentEvent, if any. |
Returns
void
populateConstraints()
protected
populateConstraints(verticalPlan
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1074
Fills the VNAV plan constraint distances.
Parameters
Parameter | Type | Description |
---|---|---|
verticalPlan | VerticalFlightPlan | The Vertical Flight Plan. |
Returns
void
reinsertInvalidConstraints()
protected
reinsertInvalidConstraints(verticalPlan
,lateralPlan
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1026
Finds previously invalidated constraints and re-inserts them into the vertical flight plan.
Parameters
Parameter | Type | Description |
---|---|---|
verticalPlan | VerticalFlightPlan | The Vertical Flight Plan. |
lateralPlan | FlightPlan | The Lateral Flight Plan. |
Returns
void
requestPathCompute()
requestPathCompute(
planIndex
):boolean
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:282
Request an out-of-cycle path computation for a specified vertical flight plan.
Parameters
Parameter | Type | Description |
---|---|---|
planIndex | number | The vertical flight plan index. |
Returns
boolean
Whether or not the computation was completed successfully.
Implementation of
VNavPathCalculator
.requestPathCompute
setDefaultFpa()
protected
setDefaultFpa(fpa
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:538
Sets this calculator's default flight path angle.
Parameters
Parameter | Type | Description |
---|---|---|
fpa | number | The new default flight path angle, in degrees. Increasingly positive values indicate steeper descents. |
Returns
void
terminateSmoothedPath()
protected
terminateSmoothedPath(verticalPlan
,targetConstraintIndex
,terminatingConstraintIndex
,maxAltitude
,terminatingConstraintIsTarget
):number
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1419
Attempts to extend and terminate a constant-FPA path from an existing target constraint at another constraint, applying flight path angles and target altitudes to each constraint along the path. The target constraint defines the FPA of the path.
If the target altitude of one of the constraints in the sequence, as prescribed by the path, violates a maximum altitude, the path will be terminated at the constraint immediately following (in flight plan order) the violating constraint, and FPA and target altitudes will not be written to the terminating constraint or any prior constraints.
Parameters
Parameter | Type | Description |
---|---|---|
verticalPlan | VerticalFlightPlan | The vertical flight plan. |
targetConstraintIndex | number | The index of the target constraint. |
terminatingConstraintIndex | number | The index of the constraint at which to terminate the path. |
maxAltitude | number | The maximum allowable target altitude, in meters. |
terminatingConstraintIsTarget | boolean | Whether to designate the terminating constraint as a target constraint if the path is not terminated early. If the path is terminated early, this argument is ignored and the constraint at which the path was terminated early is always designated as a target constraint. |
Returns
number
The index of the constraint at which the constant-FPA path was actually terminated.
applyPathValuesToSmoothedConstraints()
protected
static
applyPathValuesToSmoothedConstraints(verticalPlan
,targetConstraintIndex
,endConstraintIndex
,maxAltitude
,out
): [undefined
|number
,number
]
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1751
Applies flight path angle and target altitude values to a sequence of constraints connected to a target constraint by a constant-FPA path extending backwards from the target constraint. The target constraint defines the FPA of the path.
If the target altitude of one of the constraints in the sequence, as prescribed by the path, violates a maximum altitude, the path will be terminated at the constraint immediately following (in flight plan order) the violating constraint, and FPA and target altitudes will not be written to the terminating constraint or any prior constraints.
Parameters
Parameter | Type | Description |
---|---|---|
verticalPlan | VerticalFlightPlan | The vertical flight plan. |
targetConstraintIndex | number | The index of the target constraint. |
endConstraintIndex | number | The index of the constraint at which the constant-FPA path ends, exclusive. |
maxAltitude | number | The maximum allowable target altitude, in meters. |
out | [undefined | number , number ] | The tuple to which to write the result of the operation. |
Returns
[undefined
| number
, number
]
[index, distance]
, where index
is the index of the constraint at which the path was terminated due to
violation of the maximum target altitude, or undefined
if no constraint violated the maximum altitude, and
distance
is the total distance of the path, in meters.
doesConstraintRequireInvalidFpa()
protected
static
doesConstraintRequireInvalidFpa(previousConstrant
,currentConstraint
,verticalPlan
,maxFpa
):boolean
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1621
Checks whether a leg constraint requires an FPA greater than the max allowed value.
Parameters
Parameter | Type | Description |
---|---|---|
previousConstrant | VNavConstraint | The previous VNavConstraint. |
currentConstraint | VNavConstraint | The VNavConstraint being evaluated. |
verticalPlan | VerticalFlightPlan | The vertical flight plan. |
maxFpa | number | The maximum FPA allowed. |
Returns
boolean
Whether this constraint requires an invalid FPA.
findPriorMaxAltitude()
protected
static
findPriorMaxAltitude(verticalPlan
,constraintIndex
,firstDescentConstraintIndex
):number
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1710
Finds the maximum altitude, in meters, of the constraint that defines a maximum altitude and is closest to a given constraint, among all constraints prior to and including (in flight plan order) the given constraint. If a vertical direct constraint is among the candidates, its minimum altitude is used if it does not define a maximum altitude.
Parameters
Parameter | Type | Description |
---|---|---|
verticalPlan | VerticalFlightPlan | The vertical flight plan. |
constraintIndex | number | The index of the constraint for which to find the closest prior maximum altitude. |
firstDescentConstraintIndex | number | The index of the first descent constraint. |
Returns
number
The maximum altitude, in meters, of the constraint that defines a maximum altitude and is closest to the
specified constraint, among all constraints prior to and including (in flight plan order) the specified
constraint, or Infinity
if there is no such altitude.
forceAtConstraint()
protected
static
forceAtConstraint(constraint
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1513
Forces a constraint to an AT constraint.
Parameters
Parameter | Type | Description |
---|---|---|
constraint | VNavConstraint | The constraint to force to an AT constraint. |
Returns
void
getConstraintAltitudes()
protected
static
getConstraintAltitudes(leg
,out
):undefined
| [number
,number
]
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1485
Gets the constraint altitudes for a lateral flight plan leg.
Parameters
Parameter | Type | Description |
---|---|---|
leg | LegDefinition | A lateral flight plan leg. |
out | [number , number ] | The tuple to which to write the altitudes, as [minimum_altitude, maximum_altitude] . |
Returns
undefined
| [number
, number
]
The constraint altitudes, in meters, for the specified flight plan leg, as
[minimum_altitude, maximum_altitude]
, or undefined
if the leg does not define any altitude constraints.
getDirectToTargetLegIndex()
protected
static
getDirectToTargetLegIndex(lateralPlan
):undefined
|number
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1529
Gets the global index of a flight plan's lateral direct-to target leg.
Parameters
Parameter | Type | Description |
---|---|---|
lateralPlan | FlightPlan | A flight plan. |
Returns
undefined
| number
The global index of the flight plan's lateral direct-to target leg, or undefined
if the plan does not
have an existing lateral direct-to.
handleDirectToLegInVerticalPlan()
protected
static
handleDirectToLegInVerticalPlan(lateralPlan
,verticalPlan
,directToLegOffset
):void
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1550
Checks if there is a lateral direct-to leg in the flight plan and if so, flags the corresponding vertical flight plan leg as such and marks the first descent constraint
Parameters
Parameter | Type | Description |
---|---|---|
lateralPlan | FlightPlan | The Lateral Flight Plan. |
verticalPlan | VerticalFlightPlan | The Vertical Flight Plan. |
directToLegOffset | number | The offset of the lateral direct-to leg from the direct-to target leg. |
Returns
void
invalidateClimbConstraint()
static
invalidateClimbConstraint():boolean
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1661
The default function which checks whether a climb constraint should be invalidated. This function always returns
false
.
Returns
boolean
Whether the specified climb constraint should be invalidated (always false
).
invalidateDescentConstraint()
static
invalidateDescentConstraint(constraint
,index
,constraints
,priorMinAltitude
,priorMaxAltitude
,requiredFpa
,maxFpa
):boolean
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1684
The default function which checks whether a descent constraint should be invalidated.
Parameters
Parameter | Type | Description |
---|---|---|
constraint | VNavConstraint | A descent constraint. |
index | number | The index of the constraint to check. |
constraints | readonly VNavConstraint [] | The array of VNAV constraints currently in the vertical flight plan. |
priorMinAltitude | number | The most recent minimum altitude, in meters, defined by a VNAV constraint prior to the constraint to check. Only prior constraints connected to the constraint to check by a contiguous sequence of descent constraints are included. |
priorMaxAltitude | number | The most recent maximum altitude, in meters, defined by a VNAV constraint prior to the constraint to check. Only prior constraints connected to the constraint to check by a contiguous sequence of descent constraints are included. |
requiredFpa | number | The minimum flight path angle, in degrees, required to meet the maximum altitude of the constraint to check, assuming a descent starting from the constraint defining the most recent prior minimum altitude. Positive values indicate a descending path. If there is no required FPA because there is no defined prior minimum altitude or maximum altitude for the constraint to check, or if the constraint to check is higher than the prior minimum altitude, then this value will equal zero. |
maxFpa | number | The maximum allowed flight path angle, in degrees. Positive values indicate a descending path. |
Returns
boolean
Whether the specified descent constraint should be invalidated.
isConstraintHigherThanPriorConstraint()
protected
static
isConstraintHigherThanPriorConstraint(previousConstrant
,currentConstraint
):boolean
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1602
Checks whether a leg constriant is a descent constraint and is higher than the prior descent leg constraint.
Parameters
Parameter | Type | Description |
---|---|---|
previousConstrant | VNavConstraint | The previous VNav Constraint. |
currentConstraint | VNavConstraint | The current VNav Constraint. |
Returns
boolean
Whether the current constraint is higher than the previous constraint.
isConstraintInMissedApproach()
protected
static
isConstraintInMissedApproach(lateralSegment
,lateralLeg
):boolean
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1587
Checks whether a leg constraint is part of the missed approach.
Parameters
Parameter | Type | Description |
---|---|---|
lateralSegment | FlightPlanSegment | The lateral flight plan segment to which the constraint's leg belongs. |
lateralLeg | LegDefinition | The lateral flight plan leg to which the constraint belongs. |
Returns
boolean
Whether the leg constraint is part of the missed approach.
isLegVnavEligible()
static
isLegVnavEligible(lateralLeg
):boolean
Defined in: src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1644
The default function which checks whether a lateral flight plan leg is eligible for VNAV.
Parameters
Parameter | Type | Description |
---|---|---|
lateralLeg | LegDefinition | A lateral flight plan leg. |
Returns
boolean
Whether the specified leg is eligible for VNAV.