Skip to content

Commit

Permalink
Merge pull request #95 from Navigraph/asrn
Browse files Browse the repository at this point in the history
Add ASRN definitions
  • Loading branch information
professoralex13 authored Nov 6, 2024
2 parents 593f0d0 + 126a92f commit 70f30e2
Show file tree
Hide file tree
Showing 6 changed files with 431 additions and 9 deletions.
6 changes: 6 additions & 0 deletions .changeset/slow-pumas-cheer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
"@navigraph/amdb": major
"navigraph": minor
---

Added ASRN to amdb
10 changes: 10 additions & 0 deletions examples/playground/src/components/map/amdbStyle.ts
Original file line number Diff line number Diff line change
Expand Up @@ -206,6 +206,16 @@ const amdbStyle: StyleFunction = (_feature): PathOptions | CircleOptions => {
radius: 15,
color: "white",
}
case FeatureType.AsrnEdge:
return {
fill: false,
color: "green",
}
case FeatureType.AsrnNode:
return {
radius: 5,
color: "red",
}
case FeatureType.RunwayThreshold:
case FeatureType.FinalApproachAndTakeoffArea:
case FeatureType.HelipadThreshold:
Expand Down
88 changes: 84 additions & 4 deletions packages/amdb/src/types/enums.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,18 @@
/* eslint-disable @typescript-eslint/no-unused-vars */
import {
ApronBoundaryNode,
AsrnNode,
HoldingPositionNode,
ParkingBoundaryNode,
ParkingStandArea,
RunwayBoundaryNode,
RunwayExitLineNode,
RunwayIntersectionNode,
StandNode,
TaxiwayLinkNode,
TaxiwayNode,
} from "./features"

export enum FeatureType {
RunwayElement = 0,
RunwayIntersection = 1,
Expand Down Expand Up @@ -43,10 +58,8 @@ export enum FeatureType {
// RunwayCenterlinePoint = 37,
// Not provided
// ArrestingSystemLocation = 38,
// Not provided yet
// AsrnEdge = 39
// Not provided yet
// AsrnNode = 40
AsrnEdge = 39,
AsrnNode = 40,
}

export enum SurfaceType {
Expand Down Expand Up @@ -265,3 +278,70 @@ export enum LineStructureType {
NotApplicable = -32765,
Unknown = -32767,
}

/**
* Descriptions of each NodeType can be found in the associated interface
*
* See {@link AsrnNode}
*/
export enum NodeType {
Taxiway,
HoldingPosition,
RunwayBoundary,
RunwayExitLine,
RunwayIntersection,
ParkingBoundary,
ApronBoundary,
TaxiwayLink,
Deicing,
Stand,
}

export enum EdgeType {
/**
* An edge running along a taxiway, or connecting two taxiways while crossing a runway
*
* Can connect to {@link TaxiwayNode}s, {@link HoldingPositionNode}s, {@link RunwayBoundaryNode}s, {@link ApronBoundaryNode}s, or {@link TaxiwayLinkNode}s (in any order or combination)
*/
Taxiway,
/**
* An edge running along the center of a runway
*
* Can connect {@link RunwayExitLineNode}s and {@link RunwayIntersectionNode}s (in any order or combination)
*/
Runway,
/**
* An edge running from the centerline of a runway to a taxiway
*
* Will connect a {@link RunwayExitLineNode} to a {@link RunwayBoundaryNode}
*/
RunwayExit,
/**
* Forms the portion of a stand entry occuring outside of the {@link ParkingStandArea}
*
* Will connect a {@link TaxiwayNode} to a {@link ParkingBoundaryNode}
*/
TaxiwayLink,
/**
* Not yet implemented
*/
Deicing = 5,
/**
* An edge running along an apron taxiline
*
* Can connect {@link ApronBoundaryNode}s and {@link TaxiwayNode}s
*/
Apron,
/**
* An edge running along a {@link ParkingStandArea} to form the main body of a stand line
*
* Will connect a {@link StandNode} to a {@link ParkingBoundaryNode}
*/
Stand,
}

export enum EdgeDerivation {
FullyAbstract,
PartiallyAbstract,
FullyDerived,
}
Loading

0 comments on commit 70f30e2

Please sign in to comment.