Friday, January 7, 2011

Airports, Part 1

For the past few days I've gone on an airport binge in OpenStreetMap. I ended up learning a lot about airports. It was fun to start mapping, then come across something different or notice a new detail and realizing that this too can be mapped! Here are my musings on the subject. Feel free to tell me I did it all wrong in the comments :)

The recent import of airport nodes from and the subsequent discussion sparked the idea to map easily identifiable runways from aerial imagery. So I downloaded all "aeroway=aerodrome" nodes within Kansas from the XAPI. In addition to the above mentioned import, a lot of airports were imported from USGS GNIS (Geographic Names Information System) back in early 2009. In total there were just under 600.

This being Kansas, a vast majority of those 600 "airports" are nothing more than a flat spot in a field where farmer Joe lands his crop duster. They have such names as "Lundgren Hereford Ranch Airport" or "Flying N Ranch Airport." They should probably be downgraded from "aerodrome" to something else and not rendered at zoom level 10 like they are now. Right now looking at western Kansas at z10 reveals a ridiculous number of airports being rendered. I have yet to see any consensus on a tagging scheme for smaller airports so I mostly just ignored them. Additionally, the aerial imagery I was using (USGS NAIP) wasn't really good enough to reliably pinpoint these grass strips in the middle green fields. It also didn't help that the GNIS information is often off by quite a bit so I wasn't sure if the runway was just blending in or if there really wasn't one in the field I was looking at but rather 2 fields over.

The more interesting airports are the municipal air fields. Most of these have a paved runway, sometimes in addition to a grass one. Even small airports stick out when they have a paved runway:

This is pretty easy to map. One runway, 3 taxiways and an apron. A quick look at the Airport page on the OSM wiki will tell you to use the aeroway=* tag with values of runway, taxiway and apron. However upon closer inspection, there is a little bit more information that can be extracted:

That big number 17 on the pavement must mean something, right? I have known that runways have names for a long time. But I never knew what they meant. Maybe this is already common knowledge to some people but it turns out they are based on nothing more than which direction the runway points. The runway above has a heading of 173 degrees. Round that to the nearest 10 and chop off the zero and you get 17. The exception to this naming rule is that there is no zero. Runways that point within 5 degrees of north are named 36. But since each runway has two ends, it also has two names obviously separated from each other by 180 degrees. So this is actually runway 17/35. This goes in a ref=* tag on the way that represents the runway. One catch: This is based on the magnetic north pole, not the geographic one. So in theory these can change over time as the magnetic pole moves. Luckily down south here magnetic and geographic poles aren't too far apart and the magnetic pole only moves about 0.1 degrees per year. However up in northern Canada they actually do use the geographic pole for runway numbering because the declination is ridiculously large. I'm sure you will thank me for this information next time you are flying in northern Canada.

Update: One of the first readers of this post (petschge on IRC)  pointed out that the magnetic pole shift has actually affected at least one major airport: Tampa International

Next, notice the lines extending across the taxiways a couple hundred feet from the edge of the runway. Kind of hard to make out in this picture but they are there. These are the holding positions where airplanes must stop and wait for permission to enter the runway. In OSM these are tagged with aeroway=holding_position. They are not rendered on the default map style but it is still useful information.

Well that's done. The other thing that could be mapped is the buildings and the outline of the airport land. I did map buildings on some airports but not this one. The land area I found difficult to determine from aerial imagery. It was hard to tell if I was looking at an area of mowed grass that belonged to the airport or a field of soybeans so I left the airports as single nodes for now. The final product: (the airport name isn't actually rendered at this zoom level. That "Russell" is from the city boundary around the airport. And I just noticed now that the city boundary probably also defines the outline of the airport. Hindsight!)

Side note: I was surprised and somewhat disturbed by how many cemeteries I saw immediately next to airport runways in rural Kansas. It kind of makes sense from a landuse perspective. You can't put tall buildings next to a runway. Plus, the local residents won't repeatedly call city hall to complain about the noise. But still, it seems kind of disconcerting in a slightly humorous way.

Next up:

Ok, we've got the runway which will be named 17/35 again. The taxiway with the holding position, check. But what's this business with the big arrows and the runway start line not being... well... at the start of the runway?! That's what I asked on IRC. User stevensn had the answer. It is called a "displaced threshold." What's that? To Wikipedia! Turns out a displaced threshold is a section of the runway which can be used for planes to start their takeoff roll but it can not be used to land on. In this case, there is a prison just south of the runway. Presumably it has tall fences or walls which means the glide slope for approach to this runway is too high to safely hit the beginning of the runway.

This setup also makes me conjure up images of a low flying airplane dropping a bungee cord into the prison yard to yank someone out. Probably impractical due to airspeed and g-force limitations but I'm sure Hollywood could stuff it into a movie somehow. If they do, I want royalties! There have however been several successful (and some failed) helicopter jailbreaks. Google it for fun some time.

Anyway, back to mapping. There is no guidance on how to map displaced thresholds on the OSM wiki. Using the TagInfo tool I looked around and noticed that there were about 15 existing uses of  "aeroway=displaced_threshold" tags. This seemed pretty logical to me so that's what I used. Now there are almost 40 uses of this tag. Unfortunately the renderers don't know about it so it doesn't show up on the map but as with holding positions, it is still useful information and if enough of them get mapped we might be able to convince the renderers to add support for it. The only real problem is when a taxiway connects to a displaced threshold. On the map it looks like the taxiway just ends in the middle of nowhere. But this is a rendering problem and remember, in OSM we tag for what's on the ground, not the renderer!

And finally (for now) two more new things I learned about:

The yellow chevrons might appear to be similar to the displaced threshold but of course aviation tends to be a very precise business so each splash of paint is precisely regulated to mean something distinct. Going back to the wikipedia page on runways, we see that these are "Blast pads, also known as overrun areas or stopways" and are constructed to take the brunt of the hot air blast when jet engines throttle up for takeoff so that the ground doesn't get eroded. Their construction may not be as robust as the rest of the runway so aircraft are prohibited from using this area for any purpose except in emergencies.

Blast pads/overruns/stopways are also not documented in OSM. Once again, I looked at TagInfo. There were a few that are tagged as aeroway=stopway and a few more that were tagged as aeroway=overrun. So I picked the more popular one. If someone has a compelling argument that it should be stopway or blast_pad I would not object to changing it. The same issue exists with not being rendered as described above for displaced thresholds although it isn't as critical since active taxiways will not connect to this section of the runway.

Lastly, note the yellow X marks to the left of the runway. This isn't too hard to figure out. It means the runway/taxiway is not in use. It could be temporary, due to construction, or (as is the case here) permanent closure with the possibility of obstacles/damage present which would make landing here dangerous. I tended to not map these. There were a few that were already mapped as active runways/taxiways so I retagged them aeroway=runway_disused/taxiway_disused which I also found used in TagInfo.

I am going to cut this post off here before it gets so long that no one will ever read it. Tune in again soon to see part 2. It will focus on some of the bigger airports and some data sources that I found to help map them in more detail.

<ding> This is your Kansas mapper speaking. You are now free to move about the planet but we ask that you leave your GPS device turned on at all times. We hope you enjoy the resulting map. Thank you for choosing OpenStreetMap. Have a nice day.

Update: Here is part 2!


  1. Very interesting indeed. Would be great for all the points you learnt to be added to the OSM wiki page. If they're being used, then document it (too late for pointless voting). with notes to say "it's undecided which tag should be used but X is more popular" if need be. And then it could be a Project of the Week.

    What's interesting about this airfield?
    Look at the data and you will notice some golf greens and sand bunkers! It's all very clear from Bing imagery. The navy might be even more displeased than usual golf courses if they catch trespassers though, so I don't have the hole numbers yet.

  2. Toby you aren't too far off with your bungee idea.

    These examples show glider pickups but they also had a system where they could hook up a wounded soldier for evac to a hospital.

  3. Great post Toby. I've used aeroway=airstrip for a local little grass strip in a field of cabbages (, but hasn't really met with approval. Knowing about the airstrip really makes a difference if you're walking the public footpath at the E end of the runway when it's operational!

  4. @Test: Yeah I suppose I should put some of this into the wiki. Documentation is hard :) Also, that golf course is awesome. Wonder if they've ever had a golf ball ingested into an engine?

    @Robert: That's awesome. And a youtube search for "fulton sky hook" returns several amusing videos. The first live test subject was a sheep, chosen because it has a "weak and delicate anatomy."

    @SK53 yeah I see 6 uses of aeroway=airstrip. While this doesn't seem like a bad tag to use I am hesitant to change things that are already rendered on the map (even if sub-optimally) until there is some consensus and documentation on the subject.