Skip to main content

Class: SmoothingPathCalculator

Handles the calculation of the VNAV flight path for Path Smoothing VNAV Implementations.

Implements

Constructors

constructor

new SmoothingPathCalculator(bus, flightPlanner, primaryPlanIndex, options?): SmoothingPathCalculator

Creates an instance of SmoothingPathCalculator.

Parameters

NameTypeDescription
busEventBusThe EventBus to use with this instance.
flightPlannerFlightPlanner<any>The flight planner to use with this instance.
primaryPlanIndexnumberThe primary flight plan index to use to calculate a path from.
options?SmoothingPathCalculatorOptionsOptions for the calculator.

Returns

SmoothingPathCalculator

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:207

Properties

applyPathValuesResult

Protected Readonly applyPathValuesResult: [undefined | number, number]

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:198


bus

Protected Readonly bus: EventBus

The EventBus to use with this instance.

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:208


directToLegOffset

Protected Readonly directToLegOffset: number

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:172


flightPathAngle

flightPathAngle: number

The default flight path angle, in degrees, for descent paths. Increasingly positive values indicate steeper descents.

Implementation of

VNavPathCalculator.flightPathAngle

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:148


flightPlanner

Protected Readonly flightPlanner: FlightPlanner<any>

The flight planner to use with this instance.

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:209


forceFirstApproachAtConstraint

Protected Readonly forceFirstApproachAtConstraint: boolean

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:170


index

Readonly index: number

This calculator's VNAV index.

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:145


invalidateClimbConstraintFunc

Protected invalidateClimbConstraintFunc: (constraint: VNavConstraint, index: number, constraints: readonly VNavConstraint[], firstDescentConstraintIndex: number, priorMinAltitude: number, priorMaxAltitude: number) => boolean

Type declaration

▸ (constraint, index, constraints, firstDescentConstraintIndex, priorMinAltitude, priorMaxAltitude): boolean

Parameters
NameType
constraintVNavConstraint
indexnumber
constraintsreadonly VNavConstraint[]
firstDescentConstraintIndexnumber
priorMinAltitudenumber
priorMaxAltitudenumber
Returns

boolean

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:178


invalidateDescentConstraintFunc

Protected invalidateDescentConstraintFunc: (constraint: VNavConstraint, index: number, constraints: readonly VNavConstraint[], priorMinAltitude: number, priorMaxAltitude: number, requiredFpa: number, maxFpa: number) => boolean

Type declaration

▸ (constraint, index, constraints, priorMinAltitude, priorMaxAltitude, requiredFpa, maxFpa): boolean

Parameters
NameType
constraintVNavConstraint
indexnumber
constraintsreadonly VNavConstraint[]
priorMinAltitudenumber
priorMaxAltitudenumber
requiredFpanumber
maxFpanumber
Returns

boolean

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:187


isLegEligibleFunc

Protected isLegEligibleFunc: (lateralLeg: LegDefinition) => boolean

Type declaration

▸ (lateralLeg): boolean

Parameters
NameType
lateralLegLegDefinition
Returns

boolean

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:174


legAltitudes

Protected Readonly legAltitudes: [number, number]

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:197


maxFlightPathAngle

maxFlightPathAngle: number

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

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:162


minFlightPathAngle

minFlightPathAngle: number

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.

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:155


planBuilt

Readonly planBuilt: ReadonlySubEvent<SmoothingPathCalculator, number>

An event fired when a vertical plan has been built or rebuilt, with the index of the plan as the event data.

Implementation of

VNavPathCalculator.planBuilt

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:165


primaryPlanIndex

Protected Readonly primaryPlanIndex: number

The primary flight plan index to use to calculate a path from.

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:210


shouldUseConstraintFunc

Protected shouldUseConstraintFunc: (lateralPlan: FlightPlan, lateralLeg: LegDefinition, globalLegIndex: number, segment: FlightPlanSegment, segmentLegIndex: number) => boolean

Type declaration

▸ (lateralPlan, lateralLeg, globalLegIndex, segment, segmentLegIndex): boolean

Parameters
NameType
lateralPlanFlightPlan
lateralLegLegDefinition
globalLegIndexnumber
segmentFlightPlanSegment
segmentLegIndexnumber
Returns

boolean

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:176


verticalFlightPlans

Protected Readonly verticalFlightPlans: (undefined | VerticalFlightPlan)[] = []

The Vertical Flight Plans managed by this Path Calculator

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:142


vnavCalculated

Readonly vnavCalculated: ReadonlySubEvent<SmoothingPathCalculator, number>

An event fired when a path has been calculated, with the index of the plan as the event data.

Implementation of

VNavPathCalculator.vnavCalculated

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:168


DEFAULT_DEFAULT_FPA

Static Protected Readonly DEFAULT_DEFAULT_FPA: 3

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:135


DEFAULT_DIRECT_TO_LEG_OFFSET

Static Protected Readonly DEFAULT_DIRECT_TO_LEG_OFFSET: 3

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:139


DEFAULT_MAX_FPA

Static Protected Readonly DEFAULT_MAX_FPA: 6

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:137


DEFAULT_MIN_FPA

Static Protected Readonly DEFAULT_MIN_FPA: 1.5

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:136

Methods

activateVerticalDirect

activateVerticalDirect(planIndex, constraintGlobalLegIndex, fpa?): void

Activates a vertical direct to a constraint index.

Parameters

NameTypeDescription
planIndexnumberThe vertical flight plan index.
constraintGlobalLegIndexnumberThe global leg index of the constraint to go direct to.
fpa?number-

Returns

void

Implementation of

VNavPathCalculator.activateVerticalDirect

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:502


buildConstraint

buildConstraint(verticalPlan, globalLegIndex, lateralLeg, constraintAltitudes, name): VNavConstraint

Builds a VNAV constraint for a lateral flight plan leg.

Parameters

NameTypeDescription
verticalPlanVerticalFlightPlanThe vertical flight plan.
globalLegIndexnumberThe global index of the lateral flight plan leg for which to build the constraint.
lateralLegLegDefinitionThe lateral flight plan leg for which to build the constraint.
constraintAltitudes[number, number]The constraint altitudes, as [minimum_altitude, maximum_altitude].
namestringThe name of the new constraint.

Returns

VNavConstraint

A new VNAV constraint for the specified lateral flight plan leg.

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:751


buildVerticalFlightPlan

buildVerticalFlightPlan(lateralPlan, verticalPlan): void

Builds a vertical flight plan from a lateral flight plan.

Parameters

NameTypeDescription
lateralPlanFlightPlanThe lateral flight plan.
verticalPlanVerticalFlightPlanThe vertical flight plan to build.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:639


buildVerticalFlightPlanAndComputeAndNotify

buildVerticalFlightPlanAndComputeAndNotify(planIndex): void

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

NameTypeDescription
planIndexnumberThe index of the plan to build and compute.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:596


buildVerticalFlightPlanAndNotify

buildVerticalFlightPlanAndNotify(lateralPlan, verticalPlan): void

Builds a vertical flight plan from a lateral flight plan and sends an event notifying subscribers that the plan was built.

Parameters

NameTypeDescription
lateralPlanFlightPlanThe lateral flight plan.
verticalPlanVerticalFlightPlanThe vertical flight plan to build.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:629


buildVerticalLegsAndConstraints

buildVerticalLegsAndConstraints(lateralPlan, verticalPlan): void

Resets the Vertical Flight Plan, populates the vertical segments and legs, finds and builds the vertical constraints.

Parameters

NameTypeDescription
lateralPlanFlightPlanThe Lateral Flight Plan.
verticalPlanVerticalFlightPlanThe Vertical Flight Plan.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:650


cancelVerticalDirect

cancelVerticalDirect(planIndex): void

Cancels the existing VNAV direct-to for a vertical flight plan.

Parameters

NameTypeDescription
planIndexnumberThe index of the vertical flight plan for which to cancel the VNAV direct-to.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:520


computeDescentPath

computeDescentPath(lateralPlan, verticalPlan): void

Computes the descent path for a flight plan.

Parameters

NameTypeDescription
lateralPlanFlightPlanThe lateral flight plan for which to compute a path.
verticalPlanVerticalFlightPlanThe vertical flight plan for which to compute a path.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:809


computeFlightPathAngles

computeFlightPathAngles(verticalPlan): boolean

Computes the flight path angles for each constraint segment.

Parameters

NameTypeDescription
verticalPlanVerticalFlightPlanThe Vertical Flight Plan.

Returns

boolean

Whether the flight path angles were computed.

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1110


computePath

computePath(lateralPlan, verticalPlan): void

Computes the vertical path for a flight plan.

Parameters

NameTypeDescription
lateralPlanFlightPlanThe lateral flight plan for which to compute a path.
verticalPlanVerticalFlightPlanThe vertical flight plan for which to compute a path.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:800


computePathAndNotify

computePathAndNotify(lateralPlan, verticalPlan): void

Computes the vertical path for a flight plan and sends an event notifying subscribers that the plan was calculated.

Parameters

NameTypeDescription
lateralPlanFlightPlanThe lateral flight plan for which to compute a path.
verticalPlanVerticalFlightPlanThe vertical flight plan for which to compute a path.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:790


createVerticalPlan

createVerticalPlan(planIndex): VerticalFlightPlan

Creates an empty vertical plan at a specified index.

Parameters

NameTypeDescription
planIndexnumberThe Vertical Plan Index to create.

Returns

VerticalFlightPlan

The newly created Vertical Plan.

Implementation of

VNavPathCalculator.createVerticalPlan

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:259


fillLegDistances

fillLegDistances(lateralPlan, verticalPlan): void

Fills the VNAV plan leg and constraint segment distances.

Parameters

NameTypeDescription
lateralPlanFlightPlanThe Lateral Flight Plan.
verticalPlanVerticalFlightPlanThe Vertical Flight Plan.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:877


findAndRemoveInvalidConstraints

findAndRemoveInvalidConstraints(verticalPlan): void

Finds and removes invalid constraints from the vertical plan.

Parameters

NameTypeDescription
verticalPlanVerticalFlightPlanThe Vertical Flight Plan.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:913


getCurrentConstraintAltitude

getCurrentConstraintAltitude(planIndex, globalLegIndex): undefined | number

Gets and returns the current constraint altitude in meters.

Parameters

NameTypeDescription
planIndexnumberThe vertical flight plan index.
globalLegIndexnumberThe 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

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:387


getCurrentConstraintDetails

getCurrentConstraintDetails(planIndex, globalLegIndex): AltitudeConstraintDetails

Gets and returns the current constraint details.

Parameters

NameTypeDescription
planIndexnumberThe vertical flight plan index.
globalLegIndexnumberis the global leg index to check.

Returns

AltitudeConstraintDetails

the VNavConstraintDetails.

Implementation of

VNavPathCalculator.getCurrentConstraintDetails

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:410


getFirstDescentConstraintAltitude

getFirstDescentConstraintAltitude(planIndex): undefined | number

Gets the first VNAV Constraint Altitude.

Parameters

NameTypeDescription
planIndexnumberThe vertical flight plan index.

Returns

undefined | number

The first VNAV constraint altitude in the plan.

Implementation of

VNavPathCalculator.getFirstDescentConstraintAltitude

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1462


getFlightPhase

getFlightPhase(planIndex): VerticalFlightPhase

Gets and returns the Current Vertical Flight Phase.

Parameters

NameTypeDescription
planIndexnumberThe vertical flight plan index.

Returns

VerticalFlightPhase

the VerticalFlightPhase.

Implementation of

VNavPathCalculator.getFlightPhase

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:369


getNextConstraintAltitude

getNextConstraintAltitude(planIndex, globalLegIndex): undefined | number

Gets and returns the next constraint altitude in meters.

Parameters

NameTypeDescription
planIndexnumberThe vertical flight plan index.
globalLegIndexnumberThe 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

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:437


getNextRestrictionForFlightPhase

getNextRestrictionForFlightPhase(planIndex, activeLateralLeg): undefined | VNavConstraint

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

NameTypeDescription
planIndexnumberThe vertical flight plan index.
activeLateralLegnumberThe 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

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:463


getTargetAltitude

getTargetAltitude(planIndex, globalLegIndex): undefined | number

Gets the VNAV target altitude for a flight plan leg.

Parameters

NameTypeDescription
planIndexnumberThe flight plan index.
globalLegIndexnumberThe 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

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:360


getTargetConstraint

getTargetConstraint(planIndex, globalLegIndex): undefined | VNavConstraint

Gets the VNAV constraint defining the target VNAV altitude for a flight plan leg.

Parameters

NameTypeDescription
planIndexnumberThe flight plan index.
globalLegIndexnumberThe 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

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:354


getTargetConstraintIndex

getTargetConstraintIndex(planIndex, globalLegIndex): number

Gets the index of the VNAV constraint defining the target VNAV altitude for a flight plan leg.

Parameters

NameTypeDescription
planIndexnumberThe flight plan index.
globalLegIndexnumberThe 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

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:301


getVerticalFlightPlan

getVerticalFlightPlan(planIndex): VerticalFlightPlan

Gets a vertical flight plan by index, or throws not found if the plan does not exist.

Parameters

NameTypeDescription
planIndexnumberThe vertical flight plan index.

Returns

VerticalFlightPlan

The requested vertical flight plan.

Throws

Not found if the flight plan index is not valid.

Implementation of

VNavPathCalculator.getVerticalFlightPlan

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:254


notifyBuilt

notifyBuilt(planIndex): void

Sends an event notifying subscribers that a vertical flight plan was built or rebuilt.

Parameters

NameTypeDescription
planIndexnumberThe index of the plan that was built.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:611


notifyCalculated

notifyCalculated(planIndex): void

Sends an event notifying subscribers that a vertical flight plan was calculated.

Parameters

NameTypeDescription
planIndexnumberThe index of the plan that was calculated.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:619


onPlanCalculated

onPlanCalculated(event): void

Method fired on a flight plan change event to rebuild the vertical path.

Parameters

NameTypeDescription
eventFlightPlanCalculatedEventThe Flight Plan Calculated Event

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:587


onPlanChanged

onPlanChanged(planIndex, legChangeEvent?, segmentChangeEvent?): void

Sets planChanged to true to flag that a plan change has been received over the bus.

Parameters

NameTypeDescription
planIndexnumberThe Plan Index that changed.
legChangeEvent?FlightPlanLegEventThe FlightPlanLegEvent, if any.
segmentChangeEvent?FlightPlanSegmentEventThe FlightPlanSegmentEvent, if any.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:560


populateConstraints

populateConstraints(verticalPlan): void

Fills the VNAV plan constraint distances.

Parameters

NameTypeDescription
verticalPlanVerticalFlightPlanThe Vertical Flight Plan.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1074


reinsertInvalidConstraints

reinsertInvalidConstraints(verticalPlan, lateralPlan): void

Finds previously invalidated constraints and re-inserts them into the vertical flight plan.

Parameters

NameTypeDescription
verticalPlanVerticalFlightPlanThe Vertical Flight Plan.
lateralPlanFlightPlanThe Lateral Flight Plan.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1026


requestPathCompute

requestPathCompute(planIndex): boolean

Request an out-of-cycle path computation for a specified vertical flight plan.

Parameters

NameTypeDescription
planIndexnumberThe vertical flight plan index.

Returns

boolean

Whether or not the computation was completed successfully.

Implementation of

VNavPathCalculator.requestPathCompute

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:282


setDefaultFpa

setDefaultFpa(fpa): void

Sets this calculator's default flight path angle.

Parameters

NameTypeDescription
fpanumberThe new default flight path angle, in degrees. Increasingly positive values indicate steeper descents.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:538


terminateSmoothedPath

terminateSmoothedPath(verticalPlan, targetConstraintIndex, terminatingConstraintIndex, maxAltitude, terminatingConstraintIsTarget): number

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

NameTypeDescription
verticalPlanVerticalFlightPlanThe vertical flight plan.
targetConstraintIndexnumberThe index of the target constraint.
terminatingConstraintIndexnumberThe index of the constraint at which to terminate the path.
maxAltitudenumberThe maximum allowable target altitude, in meters.
terminatingConstraintIsTargetbooleanWhether 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.

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1419


applyPathValuesToSmoothedConstraints

applyPathValuesToSmoothedConstraints(verticalPlan, targetConstraintIndex, endConstraintIndex, maxAltitude, out): [undefined | number, number]

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

NameTypeDescription
verticalPlanVerticalFlightPlanThe vertical flight plan.
targetConstraintIndexnumberThe index of the target constraint.
endConstraintIndexnumberThe index of the constraint at which the constant-FPA path ends, exclusive.
maxAltitudenumberThe 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.

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1751


doesConstraintRequireInvalidFpa

doesConstraintRequireInvalidFpa(previousConstrant, currentConstraint, verticalPlan, maxFpa): boolean

Checks whether a leg constraint requires an FPA greater than the max allowed value.

Parameters

NameTypeDescription
previousConstrantVNavConstraintThe previous VNavConstraint.
currentConstraintVNavConstraintThe VNavConstraint being evaluated.
verticalPlanVerticalFlightPlanThe vertical flight plan.
maxFpanumberThe maximum FPA allowed.

Returns

boolean

Whether this constraint requires an invalid FPA.

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1621


findPriorMaxAltitude

findPriorMaxAltitude(verticalPlan, constraintIndex, firstDescentConstraintIndex): number

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

NameTypeDescription
verticalPlanVerticalFlightPlanThe vertical flight plan.
constraintIndexnumberThe index of the constraint for which to find the closest prior maximum altitude.
firstDescentConstraintIndexnumberThe 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.

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1710


forceAtConstraint

forceAtConstraint(constraint): void

Forces a constraint to an AT constraint.

Parameters

NameTypeDescription
constraintVNavConstraintThe constraint to force to an AT constraint.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1513


getConstraintAltitudes

getConstraintAltitudes(leg, out): undefined | [number, number]

Gets the constraint altitudes for a lateral flight plan leg.

Parameters

NameTypeDescription
legLegDefinitionA 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.

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1485


getDirectToTargetLegIndex

getDirectToTargetLegIndex(lateralPlan): undefined | number

Gets the global index of a flight plan's lateral direct-to target leg.

Parameters

NameTypeDescription
lateralPlanFlightPlanA 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.

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1529


handleDirectToLegInVerticalPlan

handleDirectToLegInVerticalPlan(lateralPlan, verticalPlan, directToLegOffset): void

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

NameTypeDescription
lateralPlanFlightPlanThe Lateral Flight Plan.
verticalPlanVerticalFlightPlanThe Vertical Flight Plan.
directToLegOffsetnumberThe offset of the lateral direct-to leg from the direct-to target leg.

Returns

void

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1550


invalidateClimbConstraint

invalidateClimbConstraint(): boolean

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).

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1661


invalidateDescentConstraint

invalidateDescentConstraint(constraint, index, constraints, priorMinAltitude, priorMaxAltitude, requiredFpa, maxFpa): boolean

The default function which checks whether a descent constraint should be invalidated.

Parameters

NameTypeDescription
constraintVNavConstraintA descent constraint.
indexnumberThe index of the constraint to check.
constraintsreadonly VNavConstraint[]The array of VNAV constraints currently in the vertical flight plan.
priorMinAltitudenumberThe 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.
priorMaxAltitudenumberThe 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.
requiredFpanumberThe 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.
maxFpanumberThe maximum allowed flight path angle, in degrees. Positive values indicate a descending path.

Returns

boolean

Whether the specified descent constraint should be invalidated.

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1684


isConstraintHigherThanPriorConstraint

isConstraintHigherThanPriorConstraint(previousConstrant, currentConstraint): boolean

Checks whether a leg constriant is a descent constraint and is higher than the prior descent leg constraint.

Parameters

NameTypeDescription
previousConstrantVNavConstraintThe previous VNav Constraint.
currentConstraintVNavConstraintThe current VNav Constraint.

Returns

boolean

Whether the current constraint is higher than the previous constraint.

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1602


isConstraintInMissedApproach

isConstraintInMissedApproach(lateralSegment, lateralLeg): boolean

Checks whether a leg constraint is part of the missed approach.

Parameters

NameTypeDescription
lateralSegmentFlightPlanSegmentThe lateral flight plan segment to which the constraint's leg belongs.
lateralLegLegDefinitionThe lateral flight plan leg to which the constraint belongs.

Returns

boolean

Whether the leg constraint is part of the missed approach.

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1587


isLegVnavEligible

isLegVnavEligible(lateralLeg): boolean

The default function which checks whether a lateral flight plan leg is eligible for VNAV.

Parameters

NameTypeDescription
lateralLegLegDefinitionA lateral flight plan leg.

Returns

boolean

Whether the specified leg is eligible for VNAV.

Defined in

src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1644