geoprimsField-grade geospatial math

TFR and NOTAM area

Draws the area a or describes, a circle around packed coordinates or a fix-radial-distance, or a list of points, with its area, bounds, and altitude limits, ready to download as GeoJSON.

Planning and education aid. Not for primary navigation. Full disclaimer

Experimental: not yet fully verified. How results are checked

28.24NM²

The area covers 28.24 NM², from 39.51662° to 39.61671° and -122.78966° to -122.66034°.

Floor
Ceiling
Center latitude
Center longitude
South edge
North edge
Provenance
Computed by
aviation.airspace.tfr-area 1.0.0, core 0.1.0
Model
A circle is 72 points at 5° steps of the geodesic direct problem from the center (Karney 2013); a fix-radial-distance center is the navaid's position carried along radial + variation for the distance. Area by Karney's geodesic polygon area; the GeoJSON ring runs counterclockwise and closes on its first point (RFC 7946)
Accuracy
Points exact on WGS 84; the 72-point circle's chords sag under 0.1% of the radius. Check the NOTAM itself: this draws what you enter
Notes
1 shown with the answer
Cites
Federal Aviation Administration, Notices to Air Missions (NOTAM), FAA Order JO 7930.2; Internet Engineering Task Force, The GeoJSON Format (RFC 7946)

Something look off?

Your values

Showing an example. Change anything.
More options 3
Run many at once from a CSV

Loading…

How we got thisFormula, worked example, sources, and proof

Model: A circle is 72 points at 5° steps of the geodesic direct problem from the center (Karney 2013); a fix-radial-distance center is the navaid's position carried along radial + variation for the distance. Area by Karney's geodesic polygon area; the GeoJSON ring runs counterclockwise and closes on its first point (RFC 7946)

Show your work

  1. Outline

    72 geodesic points for a circle, or the entered corners

    72 points = 72 points

  2. Area

    Karney geodesic polygon area

    72 points on WGS 84 = 28.24 NM²

The same steps an agent gets from the MCP server with explain: true.

Accuracy: Points exact on WGS 84; the 72-point circle's chords sag under 0.1% of the radius. Check the NOTAM itself: this draws what you enter

Worked example: A 3 NM TFR, surface to 3,000 ft MSL. Source: add-practitioner-essentials TFR scenario: a 3 NM geodesic circle, exportable as GeoJSON with its altitude limits. It is golden test vector v001, and every build checks the tool still gives its answer within its tolerance.

You enter

Ceiling
3000 FT MSL
Center
393400N1224330W
Floor
SFC
Radius
3 NM

You get

Area
28.24 NM²
Floor
SFC
Ceiling
3000 ft MSL
Center latitude
39.5666667°
Center longitude
-122.725°
South edge
39.51662°
North edge
39.61671°
West edge
-122.78966°
East edge
-122.66034°
File name
tfr-area.geojson
Media type
application/geo+json
GeoJSON
{"type":"Feature","geometry":{"type":"Polygon","coordinates":[[[-122.72500000000001,39.61670864008062],[-122.73063921465148,39.616518079319675],[-122.73623541933856,39.61594785040312],[-122.74174593423719,39.6150023022747],[-122.74712873720551,39.6136886460782],[-122.75234278615102,39.612016899820254],[-122.75734833369172,39.60999981150851],[-122.76210723164594,39.60765276136904],[-122.7665832229728,39.604993643910625],[-122.77074221889256,39.60204273076034],[-122.77455255904201,39.59882251534437],[-122.77798525266311,39.59535754062779],[-122.78101419898293,39.591674211257086],[-122.78361638511555,39.58780059156776],[-122.7857720600032,39.58376619102588],[-122.7874648831098,39.579601738766065],[-122.7886820467852,39.57533894896844],[-122.78941437143006,39.57101027888296],[-122.78965637280798,39.56664868136148],[-122.7894063010702,39.5622873537939],[-122.78866615127865,39.557959485367775],[-122.78744164543228,39.55369800457695],[-122.78574218621813,39.54953532889808],[-122.78358078292092,39.54550311853091],[-122.78097395013158,39.54163203606289],[-122.77794158009439,39.53795151386802],[-122.7745067897236,39.53448953098737],[-122.77069574350142,39.531272401162056],[-122.76653745364015,39.528324573603086],[-122.76206355905046,39.52566844798248],[-122.75730808480431,39.52332420502176],[-122.75230718391538,39.521309653934836],[-122.7470988633794,39.51964009785536],[-122.74172269652358,39.518328218243354],[-122.73621952380523,39.517383979124645],[-122.73063114427738,39.5168145518693],[-122.72500000000001,39.516624261062915],[-122.71936885572264,39.5168145518693],[-122.71378047619478,39.517383979124645],[-122.70827730347644,39.518328218243354],[-122.70290113662061,39.51964009785536],[-122.69769281608464,39.521309653934836],[-122.69269191519571,39.52332420502176],[-122.68793644094956,39.52566844798248],[-122.68346254635986,39.528324573603086],[-122.6793042564986,39.531272401162056],[-122.67549321027641,39.53448953098737],[-122.67205841990562,39.53795151386802],[-122.66902604986844,39.54163203606289],[-122.6664192170791,39.54550311853091],[-122.66425781378189,39.54953532889808],[-122.66255835456774,39.55369800457695],[-122.66133384872137,39.557959485367775],[-122.66059369892982,39.5622873537939],[-122.66034362719203,39.56664868136148],[-122.66058562856996,39.57101027888296],[-122.66131795321482,39.57533894896844],[-122.66253511689021,39.579601738766065],[-122.66422793999682,39.58376619102588],[-122.66638361488447,39.58780059156776],[-122.66898580101709,39.591674211257086],[-122.6720147473369,39.59535754062779],[-122.67544744095801,39.59882251534437],[-122.67925778110745,39.60204273076034],[-122.68341677702722,39.604993643910625],[-122.68789276835408,39.60765276136904],[-122.6926516663083,39.60999981150851],[-122.697657213849,39.612016899820254],[-122.7028712627945,39.6136886460782],[-122.70825406576283,39.6150023022747],[-122.71376458066146,39.61594785040312],[-122.71936078534854,39.616518079319675],[-122.72500000000001,39.61670864008062]]]},"properties":{"floor":"SFC","ceiling":"3000 ft MSL"}}

Review: Not yet independently reviewed by a flight instructor (CFI).

Last verified: 2026-09-22, when a maintainer last confirmed this tool's sources at the issuer. See the sources ledger.

Status: version 1.0.0, core 0.1.0. See this tool in the verification report.

Checked against: 8 golden test vectors (download the test vectors, each with its source and tolerance). See how results are checked and every source.

Sources

Terms

NOTAM: Notice to Air Missions
A published notice of something pilots need to know that is not on the charts yet, such as a closed runway, an unlit tower, or a flight restriction. Source: Notices to Air Missions (NOTAM), FAA Order JO 7930.2
TFR: temporary flight restriction
Airspace closed to most flights for a time, for example around a fire, a stadium, or a VIP visit, published by NOTAM as a circle or area with a floor and a ceiling. Source: Notices to Air Missions (NOTAM), FAA Order JO 7930.2

Experimental means this tool has not yet met the stable bar: at least 20 golden vectors, differential tests, and an independent worked example.

NOTAM — Notice to Air Missions

A published notice of something pilots need to know that is not on the charts yet, such as a closed runway, an unlit tower, or a flight restriction.

Source: Notices to Air Missions (NOTAM), FAA Order JO 7930.2

TFR — temporary flight restriction

Airspace closed to most flights for a time, for example around a fire, a stadium, or a VIP visit, published by NOTAM as a circle or area with a floor and a ceiling.

Source: Notices to Air Missions (NOTAM), FAA Order JO 7930.2