Skip to main content

Altira v-2026.11.0

Image-driven DEM acquisition and elevation queries.

Overview • Installation • Quick Start • Documentation • Development

PyPI CI Validate Release Metadata Deployment

Overview

Altira selects DEM tiles from georeferenced rasters, downloads Copernicus, ALOS, or SRTM data, and provides elevation interpolation, height statistics, and local DEM support. All elevation arrays and queries use WGS84 ellipsoidal meters.

Installation

Use the altira Conda environment for GDAL and PROJ. From this checkout:

conda env create -f resources/envs/altira.yml
conda activate altira
python -m pip install -e .

The base package supports georeferenced raster paths, DEM downloads, coordinate queries, and local DEMs. GDAL reads raster georeferencing directly.

DEM usage

from altira import Dem

dem = Dem(cache_dir="D:/DEM", local_paths=(), resolution=30)
tiles = dem.preload_image("D:/Images/scene.tif")

heights = dem.interpolate_heights([13.3, 13.31], [52.5, 52.51])
minimum, maximum, average = dem.get_height_bounds(
    13.3, 13.31, 52.5, 52.51, compute_avg_height=True
)

preload_image returns a tuple of DemTile objects with info, heights, and transform attributes. info.path identifies the unchanged native source raster; heights is a float32 array converted to ellipsoidal meters. Raster paths must provide an affine transform and CRS. GDAL reads these directly, including projected and rotated grids.

For footprints supplied by a caller, load DEM tiles using explicit WGS84 bounds:

tiles = dem.preload_dem_tiles(west=13.3, east=13.31, south=52.5, north=52.51)

Use west > east for bounds crossing the antimeridian. Product metadata loading and geocoding are the caller's responsibility.

altira download "D:/Images/scene.tif" --cache-dir "D:/DEM"
altira download "D:/Images/scene.tif" --cache-dir "D:/DEM" --source alos-ellipsoidal

Select the online dataset explicitly with source:

Source Native resolution Native vertical datum
copernicus (default) 30 or 90 m EGM2008
alos 30 m EGM96
alos-ellipsoidal 30 m WGS84 ellipsoid
srtm 30 or 90 m EGM96
srtm-ellipsoidal 30 m WGS84 ellipsoid
dem = Dem(cache_dir="D:/DEM", source="alos-ellipsoidal", resolution=30)
tiles = dem.preload_image("D:/Images/scene.tif")

ALOS and SRTM use OpenTopography's anonymous bulk storage, without an account or API key. Published VRT indexes determine coverage; only selected native tiles are downloaded. Ellipsoidal variants skip geoid conversion. These are OpenTopography's published mirrors, which may differ in version from the original producers' current releases. ALOS is a surface model, so elevations can include vegetation and buildings. See the source dataset pages for attribution: ALOS, ALOS Ellipsoidal, SRTM, and SRTM Ellipsoidal.

Local directories take priority in their supplied order, with the finest resolution preferred within each directory. Supported formats include SRTM HGT, CGIAR SRTM, DTED, TanDEM-X, edited TanDEM-X, Copernicus, and ZIP/TAR deliveries. Coverage gaps are logged, without switching source or resolution. Interpolation fills unavailable or nodata posts with avg_height=0; use avg_height=float("nan") to retain gaps. Raster and network failures raise.

See the usage guide for cache, datum, and statistics details.

Documentation

The documentation site includes the usage guide and API reference. The documentation source is in docs/.

Development

Install the development dependencies:

> pip install -e .[dev]

Run the core test suite directly with pytest:

> pytest

Run linting and formatting with Ruff:

> python -m ruff check --fix .
> python -m ruff format .

To include coverage:

> pytest --cov --cov-report=term-missing

Metadata

Release files for altira 2026.11.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for altira 2026.11.0
File Actions
altira-2026.11.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details for altira-2026.11.0-cp313-cp313-win_amd64.whl
altira-2026.11.0-cp313-cp313-win32.whl CPython 3.13 CPython 3.13 Windows x86-32 Details for altira-2026.11.0-cp313-cp313-win32.whl
altira-2026.11.0-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details for altira-2026.11.0-cp313-cp313-musllinux_1_2_x86_64.whl
altira-2026.11.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details for altira-2026.11.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
altira-2026.11.0-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details for altira-2026.11.0-cp313-cp313-macosx_11_0_arm64.whl

Total release size: 8.1 MB

Release files / altira-2026.11.0-cp313-cp313-win_amd64.whl

Download URL altira-2026.11.0-cp313-cp313-win_amd64.whl
Size 438.7 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
f8b887199854238c65650add036b4fe8e60c6a1ced8f29ba07cb5fa0428ac20d
BLAKE2b-256 checksum
How to use checksums
417b23fa7f0cca68d9fdcc73543253e08971845ed8e177ee595992c7feabbdf0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 6, 2026.

Transparency log

Release files / altira-2026.11.0-cp313-cp313-win32.whl

Download URL altira-2026.11.0-cp313-cp313-win32.whl
Size 393.8 kB
Tags CPython 3.13 Windows x86-32
SHA-256 checksum
How to use checksums
2c7c61546b18bd38eb2399e06aecdc09d89874ca9a924b7e43cd32b74fca3484
BLAKE2b-256 checksum
How to use checksums
7a3d2e734bf498894a1517512ea375dbd03797ab921eeaed75af6f9e8558708f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 6, 2026.

Transparency log

Release files / altira-2026.11.0-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL altira-2026.11.0-cp313-cp313-musllinux_1_2_x86_64.whl
Size 3.4 MB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
d8097cbfdca213209ad6269383aade2b9b0e409a25292e87e5ea0081ba7d4605
BLAKE2b-256 checksum
How to use checksums
677914e21d4cd5c6517cfbcbe2dfe5fd2b80eb35ed692ca4795a42b12c2cbe98
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 6, 2026.

Transparency log

Release files / altira-2026.11.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL altira-2026.11.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 3.4 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
ae4f44b2792ab81e7b7b3c4439a565802fda2bcb759971486002df62d17923f7
BLAKE2b-256 checksum
How to use checksums
08ccc3a5a841fb0d39ea6ccbc31257c34d3f58f584bc7f5efb78eb1a1595da38
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 6, 2026.

Transparency log

Release files / altira-2026.11.0-cp313-cp313-macosx_11_0_arm64.whl

Download URL altira-2026.11.0-cp313-cp313-macosx_11_0_arm64.whl
Size 513.8 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
3bddb1beb7f01b6d12e3b1fbb31312bdc7691ecb8ffc6f1fac8732f37eb06d83
BLAKE2b-256 checksum
How to use checksums
5aec4695fa6c93fdb6aa7c8704729b54b16ddf0a6641ca340932680d6db29932
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 6, 2026.

Transparency log

Security for altira 2026.11.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 5 files in this release have been uploaded with provenance metadata.

Select from 5 files

Attestation for altira-2026.11.0-cp313-cp313-win_amd64.whl

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 6, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page