The purpose of this utility is to process the freely provided FAA/Aeronav digital aviation charts from GeoTiffs into seamless rasters, tiles, and mbtiles suitable for direct use in mapping applications
It has only been tested under Ubuntu 14.10+
- Add support for FAA's new APIs for determining current chart versions
https://soa.smext.faa.gov/apra
curl -X GET "https://soa.smext.faa.gov/apra/vfr/sectional/chart?geoname=Albuquerque&edition=current&format=tiff" -H "accept: application/xml"
https://app.swaggerhub.com/apis/FAA/APRA/1.1.0
https://www.faa.gov/got_data/
- Only optimize tiles if the source raster has changed
- Only create mbtiles if the source raster has changed
- Handle charts which cross the anti-meridian (tilers_tools handles this)
- Pull out insets and georeference them as necessary
- Pursue a multithreaded gdal2tiles that can auto determine zoom levels
- Use make to update only as necessary (done via memoize.py)
- gdal 1.10+
- wget
- pngquant
- graphicsmagick
- mbutil
- ~200 Gigabytes of free storage
Install various utilities and libraries and create directories using
./setup.sh
The freshenLocalCharts.sh
downloads all the .zip files containing the charts to the specified folder.
./freshenLocalCharts.sh /home/testuser/Downloads/aeronav
This same folder will be the first parameter to the make_seamless_charts.sh
script (see below
This will need to be updated for every new cycle and is the 2nd paramter to make_seamless_charts.sh
Lookup the most recent data in the Product_Schedule.pdf for dates through 2029
eg 12-10-2015
next will be 02-04-2016
then 03-31-2016 etc etc.
To these utilities as necessary in the *.sh scripts. If you used setup.sh
to insatall the dependencies, they will be cloned from github into this directory so no editing is necessary. Otherwise, make sure those paths are set correctly:
./parallelGdal2Tiles/gdal2tiles.py
./mbutil/mb-util
./tilers_tools/
You can supply the following flags to the Edit the make_seamless_charts.sh
script:
-c should_process_caribbean
-e should_process_enroute
-g should_process_grand_canyon
-h should_process_helicopter
-p should_process_planning
-s should_process_sectional
-t should_process_tac
-m should_create_mbtiles
- Using
-o
will optimize individual tile size using pngquant - Using
-m
will create mbtiles for individual and merged charts
Note that both of these will add some significant time to the overall process, especially the tile optimization (though it does significantly reduce file sizes)
./make_seamless_charts.sh <flags> </path/to/aeronav_charts> <date_of_enroute_set>
</path/to/aeronav_charts>
is the folder where you previously downloaded the the charts12-10-2015
is the cycle
e.g
./make_seamless_charts.sh -s -m /home/testuser/Downloads/aeronav 12-10-2017
- Wait a very long time (assuming all went correctly)
- Individual charts should be in "6_tiles"
- merged charts should be in "merged_tiled_charts"
- mbtile archives should be in "7_mbtiles"