DTED terrain loading and elevation lookup.
Summary
Functions
Open a DTED terrain directory.
Open a DTED terrain directory or raise.
Look up terrain height at {longitude_deg, latitude_deg}.
Look up one ORTHOMETRIC terrain height in meters or raise.
Look up a batch of terrain heights.
Look up a batch of ORTHOMETRIC terrain heights in meters or raise.
Alias for height/4, matching the Rust/Python/WASM height_m name.
Look up terrain height with explicit lookup options.
Load one DTED tile from disk.
Load one DTED tile or raise.
Read the nearest posting elevation from a loaded DTED tile.
Read one ORTHOMETRIC tile posting height in meters or raise.
Types
@type interpolation() :: :bilinear | :nearest_posting
@type lookup_options() :: keyword() | Sidereon.Terrain.DtedLookupOptions.t()
Functions
@spec dted(String.t()) :: {:ok, Sidereon.Terrain.Dted.t()} | {:error, term()}
Open a DTED terrain directory.
The returned handle loads tiles lazily as lookups request them.
Open a DTED terrain directory or raise.
@spec height(Sidereon.Terrain.Dted.t(), number(), number(), lookup_options()) :: {:ok, float()} | {:error, atom()}
Look up terrain height at {longitude_deg, latitude_deg}.
Returns {:ok, height_m} in meters above the DTED ORTHOMETRIC vertical datum,
or {:error, reason}. Points outside cached DTED coverage return 0.0 from
the core terrain model. Longitude is first by design.
Look up one ORTHOMETRIC terrain height in meters or raise.
@spec height_batch( Sidereon.Terrain.Dted.t(), [{number(), number()}], lookup_options() ) :: [ok: float(), error: atom()] | {:error, term()}
Look up a batch of terrain heights.
points is a list of {longitude_deg, latitude_deg} pairs. The returned list
has one {:ok, height_m} or {:error, reason} entry per input, preserving
order. Heights are meters above the DTED ORTHOMETRIC vertical datum.
Look up a batch of ORTHOMETRIC terrain heights in meters or raise.
@spec height_m(Sidereon.Terrain.Dted.t(), number(), number(), lookup_options()) :: {:ok, float()} | {:error, atom()}
Alias for height/4, matching the Rust/Python/WASM height_m name.
@spec height_m_with_options( Sidereon.Terrain.Dted.t(), number(), number(), lookup_options() ) :: {:ok, float()} | {:error, atom()}
Look up terrain height with explicit lookup options.
@spec load_tile(String.t()) :: {:ok, Sidereon.Terrain.DtedTile.t()} | {:error, term()}
Load one DTED tile from disk.
Load one DTED tile or raise.
@spec tile_elevation(Sidereon.Terrain.DtedTile.t(), number(), number()) :: {:ok, integer()} | {:error, atom()}
Read the nearest posting elevation from a loaded DTED tile.
Returns an integer height in meters above the DTED ORTHOMETRIC vertical datum. Longitude is first.
Read one ORTHOMETRIC tile posting height in meters or raise.