Skip to main content

Abstract Class: AbstractFlightPathLegCalculator

Defined in: src/sdk/flightplan/flightpath/legcalculators/AbstractFlightPathLegCalculator.ts:18

An abstract implementation of FlightPathLegCalculator.

Extended by

Implements

Constructors

Constructor

new AbstractFlightPathLegCalculator(facilityCache, canSkipWhenActive): AbstractFlightPathLegCalculator

Defined in: src/sdk/flightplan/flightpath/legcalculators/AbstractFlightPathLegCalculator.ts:27

Creates a new instance of AbstractFlightPathLegCalculator.

Parameters

ParameterTypeDescription
facilityCacheFlightPathCalculatorFacilityCacheThis calculator's cache of facilities.
canSkipWhenActivebooleanWhether this calculator can skip leg calculations when the leg to calculate is the active flight plan leg.

Returns

AbstractFlightPathLegCalculator

Properties

canSkipWhenActive

protected readonly canSkipWhenActive: boolean

Defined in: src/sdk/flightplan/flightpath/legcalculators/AbstractFlightPathLegCalculator.ts:29

Whether this calculator can skip leg calculations when the leg to calculate is the active flight plan leg.


facilityCache

protected readonly facilityCache: FlightPathCalculatorFacilityCache

Defined in: src/sdk/flightplan/flightpath/legcalculators/AbstractFlightPathLegCalculator.ts:28

This calculator's cache of facilities.

Methods

calculate()

calculate(legs, calculateIndex, activeLegIndex, state, options): LegCalculations

Defined in: src/sdk/flightplan/flightpath/legcalculators/AbstractFlightPathLegCalculator.ts:223

Calculates flight path vectors for a flight plan leg and adds the calculations to the leg.

Parameters

ParameterTypeDescription
legsLegDefinition[]A sequence of flight plan legs.
calculateIndexnumberThe index of the leg to calculate.
activeLegIndexnumberThe index of the active leg.
stateFlightPathStateThe current flight path state.
optionsReadonly<FlightPathLegCalculationOptions>Options to use for the calculation.

Returns

LegCalculations

The flight plan leg calculations.

Implementation of

FlightPathLegCalculator.calculate


calculateMagVar()

abstract protected calculateMagVar(legs, calculateIndex, activeLegIndex, state, options): void

Defined in: src/sdk/flightplan/flightpath/legcalculators/AbstractFlightPathLegCalculator.ts:363

Calculates the magnetic variation for a flight plan leg.

Parameters

ParameterTypeDescription
legsLegDefinition[]A sequence of flight plan legs.
calculateIndexnumberThe index of the leg to calculate.
activeLegIndexnumberThe index of the active leg.
stateFlightPathStateThe current flight path state.
optionsReadonly<FlightPathLegCalculationOptions>Options to use for the leg calculations.

Returns

void

The number of vectors added to the sequence.


calculateVectors()

abstract protected calculateVectors(legs, calculateIndex, activeLegIndex, state, options): void

Defined in: src/sdk/flightplan/flightpath/legcalculators/AbstractFlightPathLegCalculator.ts:380

Calculates flight path vectors for a flight plan leg.

Parameters

ParameterTypeDescription
legsLegDefinition[]A sequence of flight plan legs.
calculateIndexnumberThe index of the leg to calculate.
activeLegIndexnumberThe index of the active leg.
stateFlightPathStateThe current flight path state.
optionsReadonly<FlightPathLegCalculationOptions>Options to use for the leg calculations.

Returns

void

The number of vectors added to the sequence.


getLegMagVar()

Call Signature

protected getLegMagVar(leg): undefined | number

Defined in: src/sdk/flightplan/flightpath/legcalculators/AbstractFlightPathLegCalculator.ts:134

Gets the magnetic variation, in degrees, to use when calculating a flight plan leg's course. If the leg defines an origin or fix VOR facility, then the database magnetic variation defined for the VOR is used (the origin facility takes priority).

Parameters
ParameterTypeDescription
legFlightPlanLegA flight plan leg.
Returns

undefined | number

The magnetic variation, in degrees, to use when calculating the specified flight plan leg's course, or undefined if the leg does not define an origin or fix VOR facility.

Call Signature

protected getLegMagVar(leg, defaultPoint): number

Defined in: src/sdk/flightplan/flightpath/legcalculators/AbstractFlightPathLegCalculator.ts:143

Gets the magnetic variation, in degrees, to use when calculating a flight plan leg's course. If the leg defines an origin or fix VOR facility, then the database magnetic variation defined for the VOR is used (the origin facility takes priority). Otherwise, the model magnetic variation for the specified point is used.

Parameters
ParameterTypeDescription
legFlightPlanLegA flight plan leg.
defaultPointLatLonInterfaceThe location from which to get magnetic variation if an origin or fix VOR is not found.
Returns

number

The magnetic variation, in degrees, to use when calculating the specified flight plan leg's course.

Call Signature

protected getLegMagVar(leg, defaultPoint?): undefined | number

Defined in: src/sdk/flightplan/flightpath/legcalculators/AbstractFlightPathLegCalculator.ts:153

Gets the magnetic variation, in degrees, to use when calculating a flight plan leg's course. If the leg defines an origin or fix VOR facility, then the database magnetic variation defined for the VOR is used (the origin facility takes priority). Otherwise, the model magnetic variation for the specified point, if defined, is used.

Parameters
ParameterTypeDescription
legFlightPlanLegA flight plan leg.
defaultPoint?LatLonInterfaceThe location from which to get magnetic variation if an origin or fix VOR is not found.
Returns

undefined | number

The magnetic variation, in degrees, to use when calculating the specified flight plan leg's course, or undefined if the leg does not define an origin or fix VOR facility and a default point was not provided.


getLegTrueCourse()

protected getLegTrueCourse(leg): undefined | number

Defined in: src/sdk/flightplan/flightpath/legcalculators/AbstractFlightPathLegCalculator.ts:175

Gets the true course, in degrees, for a flight plan leg. If the leg defines an origin or fix VOR facility, then the magnetic variation defined at the VOR is used to adjust magnetic course. Otherwise the computed magnetic variation for the specified point is used.

Parameters

ParameterTypeDescription
legFlightPlanLegA flight plan leg.

Returns

undefined | number

The true course, in degrees, for the flight plan leg.


getMagVarFromIcao()

protected getMagVarFromIcao(icao): undefined | number

Defined in: src/sdk/flightplan/flightpath/legcalculators/AbstractFlightPathLegCalculator.ts:52

Gets the magnetic variation, in degrees, at a facility. If the facility is a VOR and it has a nominal database magnetic variation, then that value will be returned. Otherwise, the model magnetic variation at the facility's position will be returned.

Parameters

ParameterTypeDescription
icaoIcaoValueThe ICAO value of the facility.

Returns

undefined | number

The magnetic variation, in degrees, at the specified facility, or undefined if the specified facility could not be retrieved.


getPositionFromIcao()

protected getPositionFromIcao(icao, out): undefined | GeoPoint

Defined in: src/sdk/flightplan/flightpath/legcalculators/AbstractFlightPathLegCalculator.ts:39

Gets a geographical position from an ICAO value.

Parameters

ParameterTypeDescription
icaoIcaoValueAn ICAO value.
outGeoPointA GeoPoint object to which to write the result.

Returns

undefined | GeoPoint

The geographical position corresponding to the ICAO string, or undefined if one could not be obtained.


getTerminatorMagVar()

protected getTerminatorMagVar(leg): undefined | number

Defined in: src/sdk/flightplan/flightpath/legcalculators/AbstractFlightPathLegCalculator.ts:118

Gets the magnetic variation, in degrees, at a flight plan leg's terminator fix. If the fix is a VOR and it has a nominal database magnetic variation, then that value will be returned. Otherwise, the model magnetic variation at the fix's position will be returned.

Parameters

ParameterTypeDescription
legFlightPlanLegA flight plan leg.

Returns

undefined | number

The magnetic variation, in degrees, at the specified flight plan leg's terminator fix, or undefined if the magnetic variation could not be determined.


getTerminatorPosition()

protected getTerminatorPosition(leg, out, icao?): undefined | GeoPoint

Defined in: src/sdk/flightplan/flightpath/legcalculators/AbstractFlightPathLegCalculator.ts:75

Gets the geographic position for a flight plan leg terminator.

Parameters

ParameterTypeDescription
legFlightPlanLegA flight plan leg.
outGeoPointA GeoPoint object to which to write the result.
icao?IcaoValueThe ICAO value of the leg's terminator fix. If not defined, then the terminator fix will be retrieved from the flight plan leg, if necessary.

Returns

undefined | GeoPoint

The position of the leg terminator, or undefined if it could not be determined.


resolveIngressToEgress()

protected resolveIngressToEgress(legCalc): void

Defined in: src/sdk/flightplan/flightpath/legcalculators/AbstractFlightPathLegCalculator.ts:392

Calculates the ingress to egress vectors for a flight plan leg and adds them to a leg calculation.

Parameters

ParameterTypeDescription
legCalcLegCalculationsThe calculations for a flight plan leg.

Returns

void


shouldSkipWhenActive()

protected shouldSkipWhenActive(legs, calculateIndex, activeLegIndex, state, options): boolean

Defined in: src/sdk/flightplan/flightpath/legcalculators/AbstractFlightPathLegCalculator.ts:341

Checks whether vector calculations should be skipped when the leg to calculate is the active leg.

Parameters

ParameterTypeDescription
legsLegDefinition[]A sequence of flight plan legs.
calculateIndexnumberThe index of the leg to calculate.
activeLegIndexnumberThe index of the active leg.
stateFlightPathStateThe current flight path state.
optionsReadonly<FlightPathLegCalculationOptions>Options to use for the leg calculations.

Returns

boolean

Whether to skip vector calculations.