pyhigh
is a Python package for accessing elevation data, which is retrieved from an ArduPilot dataset. The package uses caching to avoid unecessary downloads, but please respect ArduPilot's download policies.
> pip install pyhigh
The pyhigh
Python package includes a command-line tool of the same name to retreive the elevation at a particular latitude and longitude:
> pyhigh --lat 36.52011 --lon -118.671
1884
As necessary, files will be download from an ArduPilot dataset and cache in the folder pyhigh/pyhigh/.cache
. To clear this cache, use the --clean
argument:
> pyhigh --clean
The get_elevation
function returns the elevation, in meters, at the given latitude and longitude.
>>> from pyhigh import get_elevation
>>> get_elevation(lat=36.52011, lon=-118.671)
1884
It is also possible to request a bunch elevations for a bunch of latitudes and longitudes at once. The result returned is a NumPy array of elevations.
>>> from pyhigh import get_elevation_batch
>>> get_elevation_batch([(36.52011, -118.671),
... (36.62011, -118.771)])
array([1884., 2438.])
This is more efficient than individual calls to get_elevation
because elevation reads are pooled together to avoid reading the same *.hgt
file multiple times.
Finally, the pyhigh
cache of *.hgt
files can be cleared with the API function clear_cache
:
>>> from pyhigh import clear_cache
>>> clear_cache()