X-Plane data file definitions

Airport data (apt.dat) 810 version


Scope
File structure
Changes from previous file versions
Example data and explanation
Codes used to define data

Return to the X-Plane File Definition home page


Scope

This document describes the file format and codes used in X-Plane's apt.dat file, 810 version.

File structure

The file structure is similar to all other X-Plane data files, with the exception that the sequencing of the data within the apt.dat file is important.  Runway, taxiway, location and ATC data for an airport must immediately follow the header data for the parent airport.

Here is an example of the two header lines, one airport, one runway and the file termination line:

I
810 Version - DAFIF data cycle 200502, build 1922, metadata AptXP810, Copyright © 2005, Robin A. Peel (robin@xsquawkbox.net). This data is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program ("AptNavGNULicence.txt"); if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. This product was developed using DAFIF (the Defense Aeronautical Flight Information File), a product of the US National Imagery and Mapping Agency (NIMA). NIMA requires the following warranty statements: (A) Under 10 U.S.C. 456, no civil action may be brought against the United States on the basis of the content of a navigational aid prepared or disseminated by either the former Defense Mapping Agency (DMA) or the National Imagery and Mapping Agency (NIMA). (B) The DAFIF product is provided "as is," and no warranty, express or implied, including, but not limited to the implied warranties of merchantability and fitness for particular purpose or arising by statute or otherwise in law or from a course of dealing or usage in trade, is made by NIMA as to the accuracy and functioning of the product. (C): Neither NIMA nor its personnel will be liable for any claims, losses, or damages arising from or connected with the use of this product. The user agrees to hold harmless the United States National Imagery and Mapping Agency. The user's sole and exclusive remedy is to stop using the DAFIF product.

1 1242 0 0 89TX Aero-Bee Ranch Airstrip
10 30.879343 -098.416976 17x 170.00 2800 0.0000 0.0000 50 111111 04 0 0 0.25 0 0000.0000


99

Each airport has a header line and one or more runway/taxiway lines,  followed by lines for an airport tower viewpoint location, a startup location on the airport , airport light beacon location and windsocks, and airport ATC (Air Traffic Control) frequencies.

Line codes used in apt.dat (810 version)
Code (apt.dat) Used for
1 Airport header data.
16 Seaplane base header data. No airport buildings or boundary fences will be rendered in X-Plane.
17 Heliport header data.  No airport buildings or boundary fences will be rendered in X-Plane.
10 Runway or taxiway at an airport.
14 Tower view location.
15 Ramp startup position(s)
18 Airport light beacons (usually "rotating beacons" in the USA).  Different colours may be defined.
19 Airport windsocks.
50 to 56 Airport ATC (Air Traffic Control) frequencies.

Note the following sequence of the airport data:

Changes from previous file versions

Example data

Here is a simplified fragment for part of an airport in apt.dat:

1 5355 1 0 KABQ Albuquerque Intl Sunport
10 35.044209 -106.598557 08x  90.44 13749 1000.0000  800.0300 150 252231 02 2 3 0.25 0 0300.0350
10 35.031995 -106.618838 03x  44.66  9993    0.0000    0.0000 150 352321 02 2 3 0.25 0 0300.0300
10 35.044021 -106.611984 17x 183.36 10014  890.0000    0.0000 150 231231 01 2 3 0.25 0 0300.0300
10 35.038364 -106.612950 12x 128.98  5992    0.0000    0.0000 150 121331 02 2 3 0.25 0
10 35.042778 -106.598572 xxx  90.44 13737    0.0000    0.0000 100 161161 02 0 0 0.25 0
14 35.047215 -106.608162 100.00 1 Tower viewpoint
15 35.047005 -106.618576   0.000 Gate B1 (American Airlines)
15 35.047005 -106.615000   0.000 Gate A1 (United Airlines)
18 35.045031 -106.598549 1 BCN
19 35.045176 -106.621581 1 WS
19 35.043241 -106.575534 1 WS
53 12190 GND
54 11830 TWR

This shows one airport header line, four runways, two taxiways, a tower viewpoint, two gate starting locations, an airport beacon, two windsocks and two ATC frequencies.  The meaning of the data in the above example data is:

Meaning of example airport data (apt.dat)
Airport header Example Usage
1 Identifies this as an airport header line.  Note that a code 16 will identify this as a seaplane/floatplane base, and a code 17 will identify it as a heliport.
5355

Airport elevation (in feet above MSL).  

1 Airport has a control tower (1=yes, 0=no).  Used by X-Plane’s ATC system.  Not used to draw the default ATC tower building (despite what is stated in WorldMaker!).
0 Display X-Plane’s default airport buildings (1=yes, 0=no).  This is usually ‘no’ if any custom taxiways have been defined.
KABQ Identifying  code for the airport (the ICAO code, if one exists).   It is helpful if these are unique, but this may not be possible in all cases.
Albuquerque Intl Sunport Airport name.  Usually, the city name is first followed by the airport name (eg. "London Heathrow").
Runways and taxiways Example Usage
10 Identifies this as a data line for a runway or taxiway segment.
35.044209 Latitude (in decimal degrees) of runway or taxiway segment center.
-106.598557 Longitude (in decimal degrees) of runway or taxiway segment center. 
08x Runway number (eg “25x” or “24R”).  If there is no runway suffix (eg. “L”, “R”, “C” or "S"), then an “x” is used.  “xxx” identifies the entry as a taxiway.  Helipads at the same airport are numbered sequentially as "H1x", H2x".
90.439 True (not magnetic) heading of the runway in degrees.  Must be between 0.00 and 360.00.  
13749 Runway or taxiway segment length in feet.
1000.0000 Length of displaced threshold (1,000 feet) for runway 08 and for the reciprocal runway 26 (0 feet).  The length of the reciprocal runway’s displaced threshold is expressed as the fractional part of this number.  Take the runway 26 displaced threshold length  (in feet) and divide it by 10,000, then add it to the displaced threshold length for runway 08.  For example, for displaced threshold lengths of 543 feet and 1234 feet, the code would be 543.1234.

Note that the displaced threshold length is included in the overall runway length but that the stopway length is excluded from the overall runway length.  This code should be 0.0000 for taxiway segments.  FYI, the displaced threshold is usually marked (in the real world) with long white arrows pointing toward the threshold.  The displaced threshold is not available for use by aeroplanes landing, but may be used for take-off (in practice, if you use these last few feet of the runway for take-off, you are probably in serious trouble!).
0.1000 Length of stopway/blastpad/over-run at the approach end of runway 08 (0 feet) and for runway 26 (1,000 feet), using the same coding structure defined above.  FYI, in the real world the stopway/blastpad/over-run is usually marked with large yellow chevrons, and aeroplane movements are not permitted.
150 Runway or taxiway segment width in feet.
252231 Runway or taxiway segment lighting codes.
  • The first three digits ("252") define the lighting for the runway as seen when approached from the direction implied by the runway number (08 in our example).
  • The final three ("231") define the lighting for the runway as seen when approached from the opposite end (26 in our example). 

 In order, these codes represent:

02 Runway or taxiway surface code for the runway or taxiway segment.  The leading zero is optional - but I always use it to keep all the columns neatly lined up.
0 Runway shoulder code.  These are only available in file version 701 and later.  Here, code 0 implies that there is no runway shoulder.
3 Runway markings (the white painted markings on the surface of the runway.  Here, code 3 implies precision runway markings (ie. there is an associated precision approach for the runway, either an ILS or MLS).
0.25 Runway smoothness.  Used to cause bumps when taxying or rolling along the runway in X-Plane.  It is on a scale of 0.0 to 1.0, with 0.0 being very smooth, and 1.0 being very, very rough.  X-Plane determines a baseline smoothness based upon the runway surface type, and then uses this factor to determine the 'quality' of the runway surface.  The default value is 0.25.
1 Runway has 'distance remaining' signs (0=no signs, 1=show signs).  These are the white letters on a black background on little illuminated signs along a runway, indicating the number of thousands of feet of usable runway that remain.  They are inappropriate at small airports or on most dirt, gravel or grass runways.
0300.0350 NEW for file version 810:  Visual glideslope angle for the VASI or PAPI at each end of the runway (3.00 degrees for runway 08 and 3.50 degrees for runway 26).  The angle for runway 08 is the whole part of this number divided by 100 (so "0300" becomes 3.00 degrees) and the angle for the reciprocal runway (26) is the fractional part of this number multiplied by 100 (so "0.0350" becomes 3.50 degrees).  This data is required for runways, but is NOT necessary for taxiways.
Startup locations Example Usage
15 Identifies this as a data line for an airport startup location (code 15).  Multiple startup locations are allowed as separate data lines. 
35.047215 Latitude (in decimal degrees) of the startup location.  
-106.618576 Longitude (in decimal degrees) of the or startup location.
0.00 True heading of the aeroplane in decimal degrees when placed at the startup location.
Gate B1 (American Airlines)

Name of a startup location (used in X-Plane 7.10 and later).

Tower viewpoints Example Usage
14 Identifies this as a data line for a tower viewpoint (code 14).Only a single tower viewpoint is permitted.
35.047005 Latitude (in decimal degrees) of the viewpoint.
-106.608162 Longitude (in decimal degrees) of the viewpoint.
100 Height (in feet) above ground level of viewpoint.
1 Flag to indicate if a control tower object should be drawn at this location in X-Plane.  0=no tower, 1=draw tower.
Tower viewpoint Name of this viewpoint
Airport light beacons Example Usage
18 Identifies this as a data line for an airport light beacon (code 18).  Note that if custom data is not defined, then appropriate data will be generated automatically and included in apt.dat.  The light beacon types available (see list below) are in accordance with the US AM (Aeronautical Information Manual) - other types may be added to cater for other light beacons used in other countries.
35.045031 Latitude (in decimal degrees) of the light beacon.
-106.598549 Longitude (in decimal degrees) of the light beacon.
1 Identifies the colours of the light beacon.  Here code 1 implies a standard white-green flashing light.  Options are:
  • Code 1: white-green flashing light (land airport).
  • Code 2: white-yellow flashing light (seaplane base).
  • Code 3: green-yellow-white flashing light (heliports).
  • Code 4: white-white-green flashing light (military field).
  • Code 5: white strobe light.
  • Code 0: no beacon (can be used at 'closed' airports).  I suggest you use a dummy lat/lon based upon one of the airport's runways.
BCN Name for this light beacon (not used by X-Plane, so can be abbreviated to save file space).
Airport windsocks Example Usage
19 Identifies this row as an airport windsock (code 19). Note that:
  • If custom data is not defined, then appropriate data will be generated automatically by may data export algorithms and included in apt.dat alongside the threshold of each runway.
  • If at least one windsock is explicitly defined at an airport, then no 'automatic' windsocks will be generated at that airport.
  • Multiple windsocks are allowed.
  • If you do not want any windsocks at an airport, then let me know in an e-mail and I will suppress the generation of all automatic windsocks at that airport.
35.045176 Latitude (in decimal degrees) of the airport windsock.  
-106.621581 Longitude (in decimal degrees) of the airport windsock.
1 Windsock lighting (1=illuminated, 0=not illuminated).
WS Name for this windsock (not used by X-Plane, so can be abbreviated to save file space).
ATC frequencies Example Usage
53 Identifies this as an airport ATC frequency line.  Codes in the 50 - 59 range are used to identity different ATC types.
12190 Airport ATC frequency, in Megahertz multiplied by 100 (ie. 121.90 MHz in this example).
GND Name of the ATC frequency.  This is often an abbreviation (such as GND for "Ground").

Codes used to define data

The codes used to define the data are:

Codes used in apt.dat (810 version)
ATC frequency codes Meaning of code
50 AWOS (Automatic Weather Observation System), ASOS (Automatic Surface Observation System) or ATIS (Automated Terminal Information System).
51 Unicom or CTAF (USA), radio (UK) - open channel for pilot position reporting at uncontrolled airports.
52 Clearance delivery.
53 Ground.
54 Tower.
55 Approach.
56 Departure.
Runway surface codes Meaning of code
01 Asphalt.
02 Concrete.
03 Turf/grass.
04 Dirt.
05 Gravel.
06 Asphalt helipad (big “H” in the middle).
07 Concrete helipad (big “H” in the middle).
08 Turf helipad (big “H” in the middle).
09 Dirt helipad (big “H” in the middle).
10 Asphalt taxiway with yellow hold line across long axis (not available from WorldMaker).
11 Concrete taxiway with yellow hold line across long axis (not available from WorldMaker).
12 Dry lakebed runway (eg. at KEDW Edwards AFB).
13 Water runways (marked with bobbing buoys) for seaplane/floatplane bases (available in X-Plane 7.0 and later).
Visual approach path indicator codes Meaning of code
1 No visual approach path lighting.
2 VASI (Visual Approach Slope Indicator).
3 PAPI (Precision Approach Path Indicator).
4 Space Shuttle Landing PAPI (steep 20 degree glide path) – its use is very rare!
Runway lighting codes

Meaning of code  

Note that for values 1-5, the codes are cumulative – ie. code 3 also assumes code 1 and code 2 when X-Plane interprets the data

1 No runway lighting.
2 Runway edge lights (white).
3 Also has REIL (Runway End Identification Lights – the flashing strobes at the approach end of the runway.
4 Also has CLL (Center Line Lighting).
5 Also has TDZ (Touch Down Zone) lighting.
6 Only has blue taxiway edge lights (use on taxiways!).
Approach lighting codes Meaning of code
1 No approach lights.
2 SSALS (Simplified short approach light system).
3 SALSF (Short approach light system with sequenced flashing lights).
4 ALSF-I (Approach light system with sequenced flashing lights).
5 ALSF-II (Approach light system with sequenced flashing lights and red side bar lights the last 1000’).
6 ODALS (Omni-directional approach light system).
7 Calvert (a British design) category 1. 
8 Calvert (a British design) categories 2 and 3. 
Runway shoulder codes Meaning of code
0 No runway shoulder.
1 Asphalt runway shoulder.
2 Concrete runway shoulder.
Runway marking codes Meaning of code
0 No runway markings. Also used for helipads (X-Plane will automatically draw the big "H" based on the runway surface code), taxiways and water runways. The runway markings available (see list below) are in accordance with the US AIM (Aeronautical Information Manual) - other types may be added to cater for different types of runway markings that may be used in other countries.
1 Visual markings.
2 Non-precision approach markings
3 Precision approach markings.

© Robin Peel, 2007.  Last updated March 8, 2007