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
Name | Type | Description |
---|---|---|
bus | EventBus | The EventBus to use with this instance. |
flightPlanner | FlightPlanner <any > | 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
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
Name | Type |
---|---|
constraint | VNavConstraint |
index | number |
constraints | readonly VNavConstraint [] |
firstDescentConstraintIndex | number |
priorMinAltitude | number |
priorMaxAltitude | number |
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
Name | Type |
---|---|
constraint | VNavConstraint |
index | number |
constraints | readonly VNavConstraint [] |
priorMinAltitude | number |
priorMaxAltitude | number |
requiredFpa | number |
maxFpa | number |
Returns
boolean
Defined in
src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:187
isLegEligibleFunc
• Protected
isLegEligibleFunc: (lateralLeg
: LegDefinition
) => boolean
Type declaration
▸ (lateralLeg
): boolean
Parameters
Name | Type |
---|---|
lateralLeg | LegDefinition |
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
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
Name | Type |
---|---|
lateralPlan | FlightPlan |
lateralLeg | LegDefinition |
globalLegIndex | number |
segment | FlightPlanSegment |
segmentLegIndex | number |
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
Name | 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
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
Name | 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.
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
Name | Type | Description |
---|---|---|
lateralPlan | FlightPlan | The lateral flight plan. |
verticalPlan | VerticalFlightPlan | The 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
Name | Type | Description |
---|---|---|
planIndex | number | The 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
Name | Type | Description |
---|---|---|
lateralPlan | FlightPlan | The lateral flight plan. |
verticalPlan | VerticalFlightPlan | The 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
Name | Type | Description |
---|---|---|
lateralPlan | FlightPlan | The Lateral Flight Plan. |
verticalPlan | VerticalFlightPlan | The 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
Name | Type | Description |
---|---|---|
planIndex | number | The 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
Name | 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
Defined in
src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:809
computeFlightPathAngles
▸ computeFlightPathAngles(verticalPlan
): boolean
Computes the flight path angles for each constraint segment.
Parameters
Name | Type | Description |
---|---|---|
verticalPlan | VerticalFlightPlan | The 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
Name | 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
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
Name | 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
Defined in
src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:790
createVerticalPlan
▸ createVerticalPlan(planIndex
): VerticalFlightPlan
Creates an empty vertical plan at a specified index.
Parameters
Name | Type | Description |
---|---|---|
planIndex | number | The Vertical Plan Index to create. |
Returns
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
Name | Type | Description |
---|---|---|
lateralPlan | FlightPlan | The Lateral Flight Plan. |
verticalPlan | VerticalFlightPlan | The 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
Name | Type | Description |
---|---|---|
verticalPlan | VerticalFlightPlan | The 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
Name | 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
Defined in
src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:387
getCurrentConstraintDetails
▸ getCurrentConstraintDetails(planIndex
, globalLegIndex
): AltitudeConstraintDetails
Gets and returns the current constraint details.
Parameters
Name | 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
Defined in
src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:410
getFirstDescentConstraintAltitude
▸ getFirstDescentConstraintAltitude(planIndex
): undefined
| number
Gets the first VNAV Constraint Altitude.
Parameters
Name | Type | Description |
---|---|---|
planIndex | number | The 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
Name | Type | Description |
---|---|---|
planIndex | number | The vertical flight plan index. |
Returns
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
Name | 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
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
Name | 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
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
Name | 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
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
Name | 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
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
Name | 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
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
Name | 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
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
Name | Type | Description |
---|---|---|
planIndex | number | The 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
Name | Type | Description |
---|---|---|
planIndex | number | The 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
Name | Type | Description |
---|---|---|
event | FlightPlanCalculatedEvent | The 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
Name | Type | Description |
---|---|---|
planIndex | number | The Plan Index that changed. |
legChangeEvent? | FlightPlanLegEvent | The FlightPlanLegEvent, if any. |
segmentChangeEvent? | FlightPlanSegmentEvent | The 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
Name | Type | Description |
---|---|---|
verticalPlan | VerticalFlightPlan | The 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
Name | Type | Description |
---|---|---|
verticalPlan | VerticalFlightPlan | The Vertical Flight Plan. |
lateralPlan | FlightPlan | The 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
Name | Type | Description |
---|---|---|
planIndex | number | The 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
Name | Type | Description |
---|---|---|
fpa | number | The 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
Name | 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.
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
Name | 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.
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
Name | 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.
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
Name | 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.
Defined in
src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1710
forceAtConstraint
▸ forceAtConstraint(constraint
): void
Forces a constraint to an AT constraint.
Parameters
Name | Type | Description |
---|---|---|
constraint | VNavConstraint | The 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
Name | 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.
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
Name | 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.
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
Name | 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
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
Name | 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.
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
Name | 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.
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
Name | 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.
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
Name | Type | Description |
---|---|---|
lateralLeg | LegDefinition | A lateral flight plan leg. |
Returns
boolean
Whether the specified leg is eligible for VNAV.
Defined in
src/sdk/autopilot/calculators/SmoothingPathCalculator.ts:1644