Angelus.Coordinates (Angelus v0.0.2)

Copy Markdown View Source

Coordinate facade reserved for native CSPICE results in v0.1.

Summary

Functions

Normalizes the ecliptic_longitude field of an ecliptic coordinate map to [0.0, 360.0) while preserving all other fields.

Functions

normalize_ecliptic(data)

@spec normalize_ecliptic(map()) :: {:ok, map()} | {:error, :invalid_coordinates}

Normalizes the ecliptic_longitude field of an ecliptic coordinate map to [0.0, 360.0) while preserving all other fields.

The input map must include numeric :ecliptic_longitude and :ecliptic_latitude keys. Returns {:error, :invalid_coordinates} for any other input.

Examples

iex> Angelus.Coordinates.normalize_ecliptic(%{ecliptic_longitude: 370.0, ecliptic_latitude: -5.0})
{:ok, %{ecliptic_longitude: 10.0, ecliptic_latitude: -5.0}}