Skip to main content

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

ParameterTypeDescription
busEventBusThe EventBus to use with this instance.
flightPlannerFlightPlannerThe 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

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

ParameterType
constraintVNavConstraint
indexnumber
constraintsreadonly VNavConstraint[]
firstDescentConstraintIndexnumber
priorMinAltitudenumber
priorMaxAltitudenumber

Returns

boolean


invalidateDescentConstraintFunc()

protected invalidateDescentConstraintFunc: (constraint, index, constraints, priorMinAltitude, priorMaxAltitude, requiredFpa, maxFpa) => boolean

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

Parameters

ParameterType
constraintVNavConstraint
indexnumber
constraintsreadonly VNavConstraint[]
priorMinAltitudenumber
priorMaxAltitudenumber
requiredFpanumber
maxFpanumber

Returns

boolean


isLegEligibleFunc()

protected isLegEligibleFunc: (lateralLeg) => boolean

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

Parameters

ParameterType
lateralLegLegDefinition

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

VNavPathCalculator.planBuilt


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

ParameterType
lateralPlanFlightPlan
lateralLegLegDefinition
globalLegIndexnumber
segmentFlightPlanSegment
segmentLegIndexnumber

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

ParameterTypeDescription
planIndexnumberThe vertical flight plan index.
constraintGlobalLegIndexnumberThe 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

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


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

ParameterTypeDescription
lateralPlanFlightPlanThe lateral flight plan.
verticalPlanVerticalFlightPlanThe 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

ParameterTypeDescription
planIndexnumberThe 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

ParameterTypeDescription
lateralPlanFlightPlanThe lateral flight plan.
verticalPlanVerticalFlightPlanThe 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

ParameterTypeDescription
lateralPlanFlightPlanThe Lateral Flight Plan.
verticalPlanVerticalFlightPlanThe 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

ParameterTypeDescription
planIndexnumberThe 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

ParameterTypeDescription
lateralPlanFlightPlanThe lateral flight plan for which to compute a path.
verticalPlanVerticalFlightPlanThe 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

ParameterTypeDescription
verticalPlanVerticalFlightPlanThe 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

ParameterTypeDescription
lateralPlanFlightPlanThe lateral flight plan for which to compute a path.
verticalPlanVerticalFlightPlanThe 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

ParameterTypeDescription
lateralPlanFlightPlanThe lateral flight plan for which to compute a path.
verticalPlanVerticalFlightPlanThe 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

ParameterTypeDescription
planIndexnumberThe Vertical Plan Index to create.

Returns

VerticalFlightPlan

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

ParameterTypeDescription
lateralPlanFlightPlanThe Lateral Flight Plan.
verticalPlanVerticalFlightPlanThe 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

ParameterTypeDescription
verticalPlanVerticalFlightPlanThe 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

ParameterTypeDescription
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


getCurrentConstraintDetails()

getCurrentConstraintDetails(planIndex, globalLegIndex): AltitudeConstraintDetails

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

Gets and returns the current constraint details.

Parameters

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

Returns

AltitudeConstraintDetails

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

ParameterTypeDescription
planIndexnumberThe 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

ParameterTypeDescription
planIndexnumberThe vertical flight plan index.

Returns

VerticalFlightPhase

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

ParameterTypeDescription
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


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

ParameterTypeDescription
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


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

ParameterTypeDescription
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


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

ParameterTypeDescription
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


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

ParameterTypeDescription
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


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

ParameterTypeDescription
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


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

ParameterTypeDescription
planIndexnumberThe 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

ParameterTypeDescription
planIndexnumberThe 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

ParameterTypeDescription
eventFlightPlanCalculatedEventThe 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

ParameterTypeDescription
planIndexnumberThe Plan Index that changed.
legChangeEvent?FlightPlanLegEventThe FlightPlanLegEvent, if any.
segmentChangeEvent?FlightPlanSegmentEventThe 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

ParameterTypeDescription
verticalPlanVerticalFlightPlanThe 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

ParameterTypeDescription
verticalPlanVerticalFlightPlanThe Vertical Flight Plan.
lateralPlanFlightPlanThe 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

ParameterTypeDescription
planIndexnumberThe 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

ParameterTypeDescription
fpanumberThe 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

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


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

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


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

ParameterTypeDescription
previousConstrantVNavConstraintThe previous VNavConstraint.
currentConstraintVNavConstraintThe VNavConstraint being evaluated.
verticalPlanVerticalFlightPlanThe vertical flight plan.
maxFpanumberThe 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

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


forceAtConstraint()

protected static forceAtConstraint(constraint): void

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

Forces a constraint to an AT constraint.

Parameters

ParameterTypeDescription
constraintVNavConstraintThe 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

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


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

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


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

ParameterTypeDescription
lateralPlanFlightPlanThe Lateral Flight Plan.
verticalPlanVerticalFlightPlanThe Vertical Flight Plan.
directToLegOffsetnumberThe 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

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


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

ParameterTypeDescription
previousConstrantVNavConstraintThe previous VNav Constraint.
currentConstraintVNavConstraintThe 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

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


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

ParameterTypeDescription
lateralLegLegDefinitionA lateral flight plan leg.

Returns

boolean

Whether the specified leg is eligible for VNAV.