Class: Epic2FmsUtils
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:16
Utility Methods for the Epic 2 FMS.
Constructors
Constructor
new Epic2FmsUtils():
Epic2FmsUtils
Returns
Epic2FmsUtils
Properties
DTO_LEG_OFFSET
readonlystaticDTO_LEG_OFFSET:3=3
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:46
getBestRnavType()
staticgetBestRnavType: (query) =>RnavTypeFlags=ApproachUtils.getBestRnavType
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:256
Utility method to return a single RnavTypeFlag from multiple possible flags.
Gets the best RNAV minimum type available for a given approach.
Parameters
| Parameter | Type | Description |
|---|---|---|
query | ApproachProcedure | RnavTypeFlags | The approach to check, or its RNAV type flags. |
Returns
The best RNAV minimum type available for the specified approach.
Param
The input RnavTypeFlags.
Returns
A single RnavTypeFlag
isApproachRnpAr()
staticisApproachRnpAr: (approach) =>boolean=ApproachUtils.isRnpAr
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1809
Checks whether an approach procedure is an RNP (AR) approach.
Checks whether an approach procedure is an RNP (AR) approach.
Parameters
| Parameter | Type | Description |
|---|---|---|
approach | ApproachProcedure | The approach procedure to check. |
Returns
boolean
Whether the approach procedure is an RNP (AR) approach.
Param
The approach procedure to check.
Returns
Whether the approach procedure is an RNP (AR) approach.
Methods
addLegTComp()
staticaddLegTComp(fms,leg,destOatC,destElev):void
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1899
Applies temperature compensation to the altitude constraints in the vertical data of the provided leg
Parameters
| Parameter | Type | Description |
|---|---|---|
fms | Epic2Fms | The FMS |
leg | LegDefinition | The leg to be temperature compensated |
destOatC | number | The destination Outside Air Temperature in degrees Celcius |
destElev | number | The destination elevation in feet |
Returns
void
approachHasNavFrequency()
staticapproachHasNavFrequency(approach):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:669
Checks whether an approach has a primary NAV frequency based on its type. Only approaches of the following types have primary NAV frequencies: ILS, LOC (BC), LDA, SDF, VOR(DME).
Parameters
| Parameter | Type | Description |
|---|---|---|
approach | ApproachProcedure | The approach to check. |
Returns
boolean
Whether the specified approach has a primary NAV frequency based on its type.
buildEpic2LegName()
staticbuildEpic2LegName(leg):string
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1223
Builds leg names using default nomenclature.
Parameters
| Parameter | Type | Description |
|---|---|---|
leg | FlightPlanLeg | The leg to build a name for. |
Returns
string
The name of the leg.
buildRunwayLeg()
staticbuildRunwayLeg(airport,oneWayRunway,isOriginRunway):FlightPlanLeg
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:130
Utility method to return a one-way runway leg
Parameters
| Parameter | Type | Description |
|---|---|---|
airport | AirportFacility | The runway's parent airport. |
oneWayRunway | OneWayRunway | is the one wway runway object |
isOriginRunway | boolean | is a bool whether this is the origin or destination (origin = true, dest = false) |
Returns
a leg object for the runway
buildVisualApproach()
staticbuildVisualApproach(facRepo,airport,runway,finalLegDistance,finalLegVpa):ApproachProcedure
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:185
Utility method to return a visual approach for a runway.
Parameters
| Parameter | Type | Description |
|---|---|---|
facRepo | FacilityRepository | is a facility repository in which to store the created faf leg facility |
airport | AirportFacility | is the airport facility for the visual approach. |
runway | OneWayRunway | is the runway to build the visual approach for. |
finalLegDistance | number | is the distance from the runway to place the faf leg in NM. |
finalLegVpa | undefined | number | is the vertical path angle selected for the final approach, or undefined if not applicable. |
Returns
an approach procedure.
calculateTComp()
staticcalculateTComp(altitude,destOatC,destElev):number
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1885
Calculates a temperature compensated altitude restriction Equation source: https://code7700.com/altimetry_temperature_correction.htm
Parameters
| Parameter | Type | Description |
|---|---|---|
altitude | number | An altitude restriction in feet |
destOatC | number | Destination outside air temperature in Celcius |
destElev | number | Destination elevation in feet |
Returns
number
A temperature compensated altitude (in feet) to fly on a non-temperature-compensated altimeter (not the actual temparture-compensated altitude of the aircraft)
canDirectTo()
staticcanDirectTo(lateralPlan,segmentIndex,segmentLegIndex):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1565
Checks whether a leg in the primary flight plan is a valid direct to target.
Parameters
| Parameter | Type | Description |
|---|---|---|
lateralPlan | FlightPlan | The lateral flight plan. |
segmentIndex | number | The index of the segment in which the leg resides. |
segmentLegIndex | number | The index of the leg in its segment. |
Returns
boolean
Whether the leg is a valid direct to target.
Throws
Error if a leg could not be found at the specified location.
canLegBeAutoUnsuspended()
staticcanLegBeAutoUnsuspended(legType):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:163
Checks whether a leg with a given type being active should cause LNAV to be auto unsuspended
Parameters
| Parameter | Type | Description |
|---|---|---|
legType | LegType | the leg type |
Returns
boolean
a boolean
canLegBeSelectedOnDirectPage()
staticcanLegBeSelectedOnDirectPage(leg):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1197
Checks whether a leg should appear on the Direct To Page based on leg type.
Parameters
| Parameter | Type | Description |
|---|---|---|
leg | FlightPlanLeg | The FlightPlanLeg to evaluate. |
Returns
boolean
whether or not the leg should appear on the Direct To page.
distanceBetweenDiscontinuedLegs()
staticdistanceBetweenDiscontinuedLegs(prevLeg,nextLeg):number
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1472
Returns the distance between the end of a leg before a discontinuity and the start of the leg after that discontinuity
Parameters
| Parameter | Type | Description |
|---|---|---|
prevLeg | LegDefinition | the leg before the discontinuity |
nextLeg | LegDefinition | the leg after the discontinuity |
Returns
number
the great circle distance between the end of the previous leg and the start of the next leg, in metres
doesApproachSupportGp()
staticdoesApproachSupportGp(approachDetails):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:384
Checks whether the approach details indicate that vertical guidance (GP) can be supported.
Parameters
| Parameter | Type | Description |
|---|---|---|
approachDetails | ApproachDetails | The current approach details |
Returns
boolean
whether or not vertical guidance is supported.
estimateDistanceForSeconds()
staticestimateDistanceForSeconds(seconds,groundSpeed):number
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1420
Calculates distance flown for a number of seconds at a ground speed
Parameters
| Parameter | Type | Description |
|---|---|---|
seconds | number | time flown in number of seconds |
groundSpeed | number | GS to predict with |
Returns
number
distance in nautical miles
estimateSecondsForDistance()
staticestimateSecondsForDistance(distance,groundSpeed):number
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1408
Calculates time in seconds to fly a certain distance at a ground speed
Parameters
| Parameter | Type | Description |
|---|---|---|
distance | number | distance to fly |
groundSpeed | number | GS to predict with |
Returns
number
time in number of seconds
findIcaoInSegment()
staticfindIcaoInSegment(segment,icao):undefined|number
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:66
Checks whether a leg exists in a segment with the specified ICAO and, if so, returns the leg index of that leg.
Parameters
| Parameter | Type | Description |
|---|---|---|
segment | FlightPlanSegment | The segment to check for the icao. |
icao | undefined | string | The ICAO to check for in the segment. |
Returns
undefined | number
The segment leg index of the leg with the matching icao, or -1.
formatFacilityFrequencyType()
staticformatFacilityFrequencyType(frequency,noneString):string
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1495
Formats a facility frequency's type for display on the FMC
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
frequency | FacilityFrequency | undefined | the frequency |
noneString | string | 'UNKNOWN' | (optional) the string to return when the type is "None" |
Returns
string
a string
getActiveSegment()
staticgetActiveSegment(plan):undefined|FlightPlanSegment
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:53
Gets the active segment in the Lateral Flight Plan.
Parameters
| Parameter | Type | Description |
|---|---|---|
plan | FlightPlan | The Lateral Flight Plan. |
Returns
undefined | FlightPlanSegment
The Active Flight Plan Segment or undefined.
getApproachFromPlan()
staticgetApproachFromPlan(plan,destination):undefined|ApproachProcedure
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:295
Gets an approach procedure from a flight plan.
Parameters
| Parameter | Type | Description |
|---|---|---|
plan | FlightPlan | A flight plan. |
destination | AirportFacility | The detsination airport of the flight plan. |
Returns
undefined | ApproachProcedure
The approach procedure from the flight plan, or undefined if the plan has no approach.
getApproachListItems()
staticgetApproachListItems(airport?,includeVisual?):ApproachListItem[]
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1770
Gets an array of approaches from an airport.
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
airport? | AirportFacility | undefined | An airport. |
includeVisual? | boolean | true | Whether to include visual approaches. Defaults to true. |
Returns
An array of approaches.
getApproachNameAsEfisString()
Get the name of an approach in the format used on the EFIS
Param
Either an airport facility (if combined with a procedure as the second arg) or an approach procedure
Param
Index of the desired approach if the first arg is an airport facility
Call Signature
staticgetApproachNameAsEfisString(facility,procedureIndex):string
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:616
Get the name of an approach in the format used on the EFIS
Parameters
| Parameter | Type | Description |
|---|---|---|
facility | AirportFacility | An airport facility |
procedureIndex | number | Index of the desired approach |
Returns
string
formatted approach name ready for EFIS display
Call Signature
staticgetApproachNameAsEfisString(approach):string
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:622
Get the name of an approach in the format used on the EFIS
Parameters
| Parameter | Type | Description |
|---|---|---|
approach | ApproachProcedure | The desired approach procedure |
Returns
string
formatted approach name ready for EFIS display
getApproachNameAsParts()
staticgetApproachNameAsParts(proc,transitionIndex):ApproachNameParts
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:531
Utility method to analyze an approach for its name components and pack them into a custom type.
Parameters
| Parameter | Type | Description |
|---|---|---|
proc | ApproachProcedure | The approach procedure. |
transitionIndex | number | The transition index. |
Returns
The name as an ApproachNameParts
getApproachNameAsString()
staticgetApproachNameAsString(facility,procedureIndex,transitionIndex):string
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:598
Utility method that gets an approach and returns its name as a flat string suitable for use in embedded text content.
Parameters
| Parameter | Type | Description |
|---|---|---|
facility | AirportFacility | The Facility. |
procedureIndex | number | The approach index. |
transitionIndex | number | The index of the approach transition. |
Returns
string
The formatted name as a string.
getApproachNameForList()
staticgetApproachNameForList(facilityOrApproach,procedureIndex?):string
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:649
Get the name of an approach in the format used in a list
Parameters
| Parameter | Type | Description |
|---|---|---|
facilityOrApproach | AirportFacility | ApproachProcedure | Either an airport facility (if combined with a procedure as the second arg) or an approach procedure |
procedureIndex? | number | Index of the desired approach if the first arg is an airport facility |
Returns
string
formatted approach name ready for a list display
getApproachSegment()
staticgetApproachSegment(plan):undefined|FlightPlanSegment
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:401
Gets the approach segment from a flight plan.
Parameters
| Parameter | Type | Description |
|---|---|---|
plan | FlightPlan | A flight plan. |
Returns
undefined | FlightPlanSegment
The approach segment in the specified flight plan, or undefined if one does not exist.
getApproachTransitionListItems()
staticgetApproachTransitionListItems(approachItem?):TransitionListItem[]
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1713
Gets the transitions for the approach, adding suffixes, vectors transtion, and default approach if needed.
Parameters
| Parameter | Type | Description |
|---|---|---|
approachItem? | ApproachListItem | The approach procedure to get the transitions for. |
Returns
The transitions for the approach.
getApproachTransitionName()
staticgetApproachTransitionName(approach,transitionIndex):string
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1745
Creates an TransitionListItem from an ApproachProcedure and the transition index.
Parameters
| Parameter | Type | Description |
|---|---|---|
approach | ApproachProcedure | The approach procedure. |
transitionIndex | number | The approach transition index. |
Returns
string
The created TransitionListItem.
getApproachVtfLeg()
staticgetApproachVtfLeg(plan):undefined|LegDefinition
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:348
Gets the vectors-to-final leg of a flight plan.
Parameters
| Parameter | Type | Description |
|---|---|---|
plan | FlightPlan | A flight plan. |
Returns
undefined | LegDefinition
The vectors-to-final leg of the flight plan, or undefined if one could not be found.
getArrivalNameAsString()
staticgetArrivalNameAsString(facility,procedureIndex,transitionIndex):string
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:500
Gets the name of a arrival procedure as a string.
Parameters
| Parameter | Type | Description |
|---|---|---|
facility | AirportFacility | The airport to which the arrival belongs. |
procedureIndex | number | An arrival procedure index. |
transitionIndex | number | The index of the arrival enroute transition. |
Returns
string
The name of the arrival procedure.
getBaseFacility()
staticgetBaseFacility(facility):Facility
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:146
Get a basic facility with only the properties of Facility from any facility.
Parameters
| Parameter | Type | Description |
|---|---|---|
facility | Facility | The facility. |
Returns
A facility instance with only the basic subset of properties.
getConstraintDisplayForDirectPage()
staticgetConstraintDisplayForDirectPage(verticalData,transitionAltitude):string
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:944
Method to get the FMS constraint display data from a verticalData object
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
verticalData | VerticalData | undefined | is the Vertical Data object for the leg |
transitionAltitude | number | 18000 | is the transition altitude that applies to the constraint |
Returns
string
A string to display on the FMC
getConstraintDisplayForLegs()
staticgetConstraintDisplayForLegs(performancePlan,verticalData,transitionAltitude,constraintInvalid?,isRunway?):string
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:865
Method to get the FMS constraint display data from a verticalData object.
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
performancePlan | Epic2PerformancePlan | undefined | performance plan data |
verticalData | VerticalData | undefined | The Vertical Data object for the leg. |
transitionAltitude | number | 18000 | The transition altitude that applies to the constraint. |
constraintInvalid? | boolean | undefined | If the constraint is invalid. |
isRunway? | boolean | undefined | If the constraint is a runway. |
Returns
string
A string to display on the FMC.
getDepartureNameAsString()
staticgetDepartureNameAsString(facility,procedureIndex):string
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:471
Gets the name of a departure procedure as a string.
Parameters
| Parameter | Type | Description |
|---|---|---|
facility | AirportFacility | The Facility. |
procedureIndex | number | The procedure index. |
Returns
string
The name of the departure procedure.
getDirectToCourse()
staticgetDirectToCourse(leg):number
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1133
Gets the direct to magnetic course from the leg vectors.
Parameters
| Parameter | Type | Description |
|---|---|---|
leg | LegDefinition | The Leg Definition |
Returns
number
the magnetic course.
getDistanceFromPposToLegEnd()
staticgetDistanceFromPposToLegEnd(lateralPlan,globalLegIndex,legDistanceRemaining):undefined|number
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1539
Returns the distance from PPOS to the end of a leg, given a lateral plan and a global leg index
Parameters
| Parameter | Type | Description |
|---|---|---|
lateralPlan | FlightPlan | the lateral plan |
globalLegIndex | number | the global leg index |
legDistanceRemaining | number | The remaining distance to the end of the leg currently tracked by LNAV, in nautical miles. |
Returns
undefined | number
the distance, in metres
getFpaDisplayForLegs()
staticgetFpaDisplayForLegs(vnavLeg,vnavConstraint?,phase?):string
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:840
Method to get the FMS FPA display data for a leg from a VNavConstraint and VNavLeg.
Parameters
| Parameter | Type | Description |
|---|---|---|
vnavLeg | VNavLeg | The VNav Leg from the vertical flight plan that cooresponds to this leg index. |
vnavConstraint? | VNavConstraint | The VNav Constraint from the Vertical Flight Plan that cooresponds to this leg index. |
phase? | VerticalFlightPhase | The vertical flight phase of this leg. |
Returns
string
A string to display on the FMC.
getFromLegForArrowDisplay()
Call Signature
staticgetFromLegForArrowDisplay(plan,globalLegIndex):undefined|LegDefinition
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1635
Gets the leg from which a specified flight plan leg originates for the purpose of displaying the flight plan from-to arrow.
Parameters
| Parameter | Type | Description |
|---|---|---|
plan | FlightPlan | A flight plan. |
globalLegIndex | number | The global index of the leg for which to get the from leg. |
Returns
undefined | LegDefinition
The leg from which the specified flight plan leg originates for the purpose of displaying the from -to arrow.
Call Signature
staticgetFromLegForArrowDisplay(plan,segmentIndex,segmentLegIndex):undefined|LegDefinition
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1645
Gets the leg from which a specified flight plan leg originates for the purpose of displaying the flight plan from-to arrow.
Parameters
| Parameter | Type | Description |
|---|---|---|
plan | FlightPlan | A flight plan. |
segmentIndex | number | The index of the segment containing the leg for which to get the from leg. |
segmentLegIndex | number | The index of the leg for which to get the from leg in its segment. |
Returns
undefined | LegDefinition
The leg from which the specified flight plan leg originates for the purpose of displaying the from -to arrow.
getGlobalLegIndex()
staticgetGlobalLegIndex(lateralPlan,segmentIndex,segmentLegIndex):number
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1619
Gets the global leg index from a segment and segment leg index, whether or not the leg exists.
Parameters
| Parameter | Type | Description |
|---|---|---|
lateralPlan | FlightPlan | The Lateral Flight Plan. |
segmentIndex | number | The Segment Index. |
segmentLegIndex | number | The Segment Leg Index. |
Returns
number
The global leg index.
getHighestRnavMinimaFromRnavType()
staticgetHighestRnavMinimaFromRnavType(type):RnavMinima
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:367
Gets the highest RNAV minima that can be selected from an RNAV Type
Parameters
| Parameter | Type | Description |
|---|---|---|
type | RnavTypeFlags | The Rnav Type Flags for the approach |
Returns
The highest RNAV minima for the approach
getLastNonMissedApproachLeg()
staticgetLastNonMissedApproachLeg(plan):number
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1431
Returns the index of the last non-missed approach leg in the flight plan
Parameters
| Parameter | Type | Description |
|---|---|---|
plan | FlightPlan | the plan to use for lookup |
Returns
number
array of index and ident, or undefined if no approach segment
getLegIndexes()
staticgetLegIndexes(lateralPlan,leg):undefined|LegIndexes
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1596
Gets the indexes for a leg.
Parameters
| Parameter | Type | Description |
|---|---|---|
lateralPlan | FlightPlan | The Lateral Flight Plan. |
leg | LegDefinition | The leg definition. |
Returns
undefined | LegIndexes
The leg indexes, or undefined if not found.
getMissedApproachPointIndex()
staticgetMissedApproachPointIndex(plan):number
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1450
Returns the index of the MAP point in a flight plan, or -1 if none is present
Parameters
| Parameter | Type | Description |
|---|---|---|
plan | FlightPlan | flight plan |
Returns
number
a number
getNominalFromLeg()
staticgetNominalFromLeg(plan,segmentIndex,segmentLegIndex):undefined|LegDefinition
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:692
Gets the nominal leg from which a specified flight plan leg originates. The nominal from leg excludes any legs which are part of a direct to or vectors-to-final sequence.
Parameters
| Parameter | Type | Description |
|---|---|---|
plan | FlightPlan | A flight plan. |
segmentIndex | number | The index of the segment containing the leg for which to get the from leg. |
segmentLegIndex | number | The index of the leg for which to get the from leg in its segment. |
Returns
undefined | LegDefinition
The nominal leg from which the specified flight plan leg originates.
getNominalFromLegIndex()
staticgetNominalFromLegIndex(plan,segmentIndex,segmentLegIndex):number
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:716
Gets the global leg index of the nominal leg from which a specified flight plan leg originates. The nominal from leg excludes any legs which are part of a direct to or vectors-to-final sequence.
Parameters
| Parameter | Type | Description |
|---|---|---|
plan | FlightPlan | A flight plan. |
segmentIndex | number | The index of the segment containing the leg for which to get the from leg. |
segmentLegIndex | number | The index of the leg for which to get the from leg in its segment. |
Returns
number
The nominal leg from which the specified flight plan leg originates.
getPlanHolds()
staticgetPlanHolds(plan,inMissed):LegDefinition[]
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1378
Returns hold legs in the flight plan. Used to determine and show appropriate HOLD pages.
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
plan | FlightPlan | undefined | the flight plan in question |
inMissed | boolean | false | whether to only include missed approach holds |
Returns
the result
getProcedureIndexAndTransitionIndexFromSegmentType()
staticgetProcedureIndexAndTransitionIndexFromSegmentType(segmentType,lateralPlan):number[]
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:416
Gets the procedure index and transition index from procedure details of the lateral plan based on segment type.
Parameters
| Parameter | Type | Description |
|---|---|---|
segmentType | FlightPlanSegmentType | The segment type. |
lateralPlan | FlightPlan | The lateral flight plan. |
Returns
number[]
an array of procedureIndex, transitionIndex.
getProcedureNameAsString()
staticgetProcedureNameAsString(segmentType,facility,procedureIndex,transitionIndex?):string
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:436
Combiner method to get a procedure name as a string for the FPLN Page.
Parameters
| Parameter | Type | Description |
|---|---|---|
segmentType | FlightPlanSegmentType | The segment type. |
facility | undefined | AirportFacility | The facility. |
procedureIndex | number | The procedure index. |
transitionIndex? | number | The transition index. |
Returns
string
the name as a string.
getPublishedSpeedDescBasedOnSegment()
staticgetPublishedSpeedDescBasedOnSegment(publishedSpeedRestriction,segmentType):SpeedRestrictionType
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1700
Returns the speed restriction type to use based on the published speed and what segment it's in.
Parameters
| Parameter | Type | Description |
|---|---|---|
publishedSpeedRestriction | number | The published speed. |
segmentType | FlightPlanSegmentType | The segment type. |
Returns
The speed restriction type to use.
getVisualApproaches()
staticgetVisualApproaches(facility):ApproachProcedure[]
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1816
Gets the visual approaches for the facility.
Parameters
| Parameter | Type | Description |
|---|---|---|
facility | AirportFacility | is the facility. |
Returns
The Approach Procedures.
isAirwayAtLeg()
staticisAirwayAtLeg(facLoader,icao,airwayName):Promise<undefined|AirwayData>
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1160
Checks for an airway at a leg and returns the airway or undefined
Parameters
| Parameter | Type | Description |
|---|---|---|
facLoader | FacilityLoader | The facility loader. |
icao | string | The icao of the entry to check. |
airwayName | string | The airway to search for. |
Returns
Promise<undefined | AirwayData>
The airway object or undefined
isAltitudeLeg()
staticisAltitudeLeg(legType):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1067
Checks if leg type is an "to altitude" leg type.
Parameters
| Parameter | Type | Description |
|---|---|---|
legType | LegType | The LegType. |
Returns
boolean
Whether the leg type is a "to altitude" leg type.
isApproachLoaded()
staticisApproachLoaded(plan):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:330
Checks whether a flight plan has an approach loaded.
Parameters
| Parameter | Type | Description |
|---|---|---|
plan | FlightPlan | A flight plan. |
Returns
boolean
Whether the flight plan has an approach loaded.
isArcLeg()
staticisArcLeg(legType):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1104
Checks if leg type is an "arc" leg type.
Parameters
| Parameter | Type | Description |
|---|---|---|
legType | LegType | The LegType. |
Returns
boolean
Whether the leg type is an "arc" leg type.
isCourseToLeg()
staticisCourseToLeg(legType):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1076
Checks if leg type is a "course to" leg type.
Parameters
| Parameter | Type | Description |
|---|---|---|
legType | LegType | The LegType. |
Returns
boolean
Whether the leg type is a "course to" leg type.
isDiscontinuityLeg()
staticisDiscontinuityLeg(legType):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1085
Checks if leg type is a "discontinuity" leg type.
Parameters
| Parameter | Type | Description |
|---|---|---|
legType | LegType | The LegType. |
Returns
boolean
Whether the leg type is a "discontinuity" leg type.
isFirstLegInSegment()
staticisFirstLegInSegment(plan,segmentIndex,segmentLegIndex):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:85
Checks if the specified leg is the first leg in the segment (accounting for discontinuities)
Parameters
| Parameter | Type | Description |
|---|---|---|
plan | FlightPlan | flight plan |
segmentIndex | number | the segment index |
segmentLegIndex | number | the segment leg index |
Returns
boolean
if the specified leg is the first leg in the segment
isGpsApproach()
staticisGpsApproach(approachType):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:263
Utility method to check whether an approach is authorized for GPS guidance.
Parameters
| Parameter | Type | Description |
|---|---|---|
approachType | APPROACH_TYPE_UNKNOWN | APPROACH_TYPE_GPS | APPROACH_TYPE_VOR | APPROACH_TYPE_NDB | APPROACH_TYPE_ILS | APPROACH_TYPE_LOCALIZER | APPROACH_TYPE_SDF | APPROACH_TYPE_LDA | APPROACH_TYPE_VORDME | APPROACH_TYPE_NDBDME | APPROACH_TYPE_RNAV | APPROACH_TYPE_LOCALIZER_BACK_COURSE | APPROACH_TYPE_VISUAL | The approach type. |
Returns
boolean
True if GPS guidance is authorized, false otherwise.
isHeadingToLeg()
staticisHeadingToLeg(legType):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1049
Checks if leg type is a "heading to" leg type.
Parameters
| Parameter | Type | Description |
|---|---|---|
legType | LegType | The LegType. |
Returns
boolean
Whether the leg type is a "heading to" leg type.
isHoldAtLeg()
staticisHoldAtLeg(legType):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1058
Checks if leg type is a "hold at" leg type.
Parameters
| Parameter | Type | Description |
|---|---|---|
legType | LegType | The LegType. |
Returns
boolean
Whether the leg type is a "hold at" leg type.
isLastLegInSegment()
staticisLastLegInSegment(plan,segmentIndex,segmentLegIndex):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:108
Checks if the specified leg is the last leg in the segment (accounting for discontinuities)
Parameters
| Parameter | Type | Description |
|---|---|---|
plan | FlightPlan | flight plan |
segmentIndex | number | the segment index |
segmentLegIndex | number | the segment leg index |
Returns
boolean
if the specified leg is the last leg in the segment
isLegHold()
staticisLegHold(leg):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1342
Returns true if the leg is a hold leg
Parameters
| Parameter | Type | Description |
|---|---|---|
leg | FlightPlanLeg | the leg in question |
Returns
boolean
the result
isLegValidAirwayExit()
staticisLegValidAirwayExit(airway,icao):undefined|IntersectionFacility
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1178
Checks for an airway exit at a given icao.
Parameters
| Parameter | Type | Description |
|---|---|---|
airway | AirwayData | The Airway Object. |
icao | string | The icao of the entry to check. |
Returns
undefined | IntersectionFacility
The Intersection Facility if the leg is a valid exit to the airway.
isLegVectOrDisco()
staticisLegVectOrDisco(leg):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1358
Returns true if a leg is a vector of discontinuity.
Parameters
| Parameter | Type | Description |
|---|---|---|
leg | FlightPlanLeg | The FlightPlanLeg |
Returns
boolean
Whether the leg is a vector of discontinuity
isLocalizerApproach()
staticisLocalizerApproach(approachType):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:277
Utility method to check for an approach with a a tunable localizer.
Parameters
| Parameter | Type | Description |
|---|---|---|
approachType | ExtendedApproachType | The approach procedure type |
Returns
boolean
True if a localizer needs to be tuned, otherwise false.
isVectorsLeg()
staticisVectorsLeg(legType):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1094
Checks if leg type is a "vectors" leg type.
Parameters
| Parameter | Type | Description |
|---|---|---|
legType | LegType | The LegType. |
Returns
boolean
Whether the leg type is a "vectors" leg type.
isVtfApproachLoaded()
staticisVtfApproachLoaded(plan):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:339
Checks whether a plan has a vectors-to-final approach loaded.
Parameters
| Parameter | Type | Description |
|---|---|---|
plan | FlightPlan | A flight plan. |
Returns
boolean
Whether the flight plan has a vectors-to-final approach loaded.
matchIdentToAirway()
staticmatchIdentToAirway(airway,ident):undefined|IntersectionFacility
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1188
Checks for an airway exit matching an input ident
Parameters
| Parameter | Type | Description |
|---|---|---|
airway | AirwayData | The AirwayObject. |
ident | string | The Ident to search for. |
Returns
undefined | IntersectionFacility
The Intersection Facility if the leg is a valid exit to the airway.
parseAltitudeForDisplay()
staticparseAltitudeForDisplay(altitudeMeters,transitionAltitudeFeet):string
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:973
Gets an altitude for display with padding, Flight Level Handling
Parameters
| Parameter | Type | Description |
|---|---|---|
altitudeMeters | number | the altitude IN METERS to evaluate |
transitionAltitudeFeet | number | the transition altitude IN FEET to evaluate |
Returns
string
A display string
parseConstraintInput()
staticparseConstraintInput(value,verticalData):undefined|boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:738
Copied from the CJ4 mod
Parameters
| Parameter | Type | Description |
|---|---|---|
value | string | The scratchpad value. |
verticalData | VerticalData | The existing leg vertical data. |
Returns
undefined | boolean
False if invalid entry.
parseDtkDistanceForDisplay()
staticparseDtkDistanceForDisplay(leg,isToLeg,ppos,distance?):string
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:990
Gets a DTK and Distance string for the FMC Legs Page Display.
Parameters
| Parameter | Type | Description |
|---|---|---|
leg | LegDefinition | The Leg Definition. |
isToLeg | boolean | Whether the leg is the TO loeg or not. |
ppos | GeoPoint | The plane's present position. |
distance? | number | A manual distance to calculate with. |
Returns
string
A Display string.
pathVectorHasHoldFlags()
staticpathVectorHasHoldFlags(flags):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1113
Checks if flight path vector has hold flags
Parameters
| Parameter | Type | Description |
|---|---|---|
flags | number | The vector's flags. |
Returns
boolean
Whether the light path vector has hold flags
reconcileDirectToData()
staticreconcileDirectToData(plan):void
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1265
Reconciles a flight plan's Direct-To data with its internal leg structure. Scans the legs of the flight plan for Direct-To legs and sets the segment index and segment leg index of the plan's Direct-To data to point to the leg immediately preceding the first Direct-To leg found, or to -1 for both if the plan contains no Direct-To legs.
Parameters
| Parameter | Type | Description |
|---|---|---|
plan | FlightPlan | A flight plan. |
Returns
void
removeAllDirectToData()
staticremoveAllDirectToData(plan):void
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1288
Removes all of a flight plan's Direct-To data, but from the DirectToData object and from any legs in the plan. Scans the legs of the flight plan for Direct-To legs and removes them.
Parameters
| Parameter | Type | Description |
|---|---|---|
plan | FlightPlan | A flight plan. |
Returns
void
removeDisplacedActiveLegs()
staticremoveDisplacedActiveLegs(plan):void
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1309
Removes all of a flight plan's Displaced Active Legs, which are flagged when a procedure is added and the active leg array is moved to enroute.
Parameters
| Parameter | Type | Description |
|---|---|---|
plan | FlightPlan | A flight plan. |
Returns
void
removeFixTypeFlags()
staticremoveFixTypeFlags(legs):FlightPlanLeg[]
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1328
Removes fix type flags from legs being moved from an approach procedure to the enroute segment.
Parameters
| Parameter | Type | Description |
|---|---|---|
legs | FlightPlanLeg[] | The FlightPlanLegs to remove fix type flags from. |
Returns
The array of FlightPlanLegs with the flags removed.
removeLegTComp()
staticremoveLegTComp(fms,leg):void
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1950
Resets the vertical data of the provided leg to the data in the nav database
Parameters
| Parameter | Type | Description |
|---|---|---|
fms | Epic2Fms | The FMS |
leg | LegDefinition | The leg to be reset |
Returns
void
shouldShowLegCourse()
staticshouldShowLegCourse(legType):boolean
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1124
Checks if leg type is a course or heading leg, which should have the leg course shown instead of the initial dtk.
Parameters
| Parameter | Type | Description |
|---|---|---|
legType | LegType | The LegType. |
Returns
boolean
Whether the leg type is a course or heading leg.
sortApproach()
staticsortApproach(a,b):number
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1846
Gets the sorting order of two approaches.
Parameters
| Parameter | Type | Description |
|---|---|---|
a | ApproachProcedure | The first approach to sort. |
b | ApproachProcedure | The second approach to sort. |
Returns
number
A negative number if approach a comes before approach b, a positive number if approach a comes
after approach b, or zero if both orderings are equivalent.
sortApproachItem()
staticsortApproachItem(a,b):number
Defined in: workingtitle-instruments-epic2/shared/Fms/Epic2FmsUtils.ts:1872
Gets the sorting order of two approach items.
Parameters
| Parameter | Type | Description |
|---|---|---|
a | ApproachListItem | The first approach item to sort. |
b | ApproachListItem | The second approach item to sort. |
Returns
number
A negative number if approach item a comes before approach item b, a positive number if approach
item a comes after approach item b, or zero if both orderings are equivalent.