ostk.physics.coordinate.spherical.LLA

class LLA(
self: ostk.physics.coordinate.spherical.LLA,
latitude: ostk.physics.unit.Angle,
longitude: ostk.physics.unit.Angle,
altitude: ostk.physics.unit.Length,
)

Bases: pybind11_object

Geodetic Latitude - Longitude - Altitude (LLA).

Reference:

https://en.wikipedia.org/wiki/Latitude

Reference:

https://en.wikipedia.org/wiki/Longitude

Construct an LLA instance.

Parameters:
  • latitude (Angle) -- Latitude.

  • longitude (Angle) -- Longitude.

  • altitude (Length) -- Altitude.

Methods

azimuth_between

Calculate the azimuth angles between two LLA coordinates.

calculate_azimuth_to

Calculate the azimuth angles between this LLA coordinate and another LLA coordinate.

calculate_distance_to

Calculate the distance between this LLA coordinate and another LLA coordinate.

calculate_forward

Propagate this LLA coordinate in provided direction and distance.

calculate_intermediate_to

Calculate a point between this LLA coordinate and another LLA coordinate.

calculate_linspace_to

Generate LLAs between this LLA coordinate and another LLA coordinate at a given interval.

cartesian

Construct LLA from Cartesian.

distance_between

Calculate the distance between two LLA coordinates.

forward

Propagate an LLA coordinate in provided direction and distance.

from_position

Construct LLA from position.

get_altitude

Get altitude.

get_latitude

Get latitude.

get_longitude

Get longitude.

intermediate_between

Calculate a point between two LLA coordinates.

is_defined

Check if defined.

linspace

Generate LLAs between two LLA coordinates at a given interval.

on_surface

Get LLA on surface (Altitude is 0.0).

to_cartesian

Convert to Cartesian.

to_string

Convert to string.

to_vector

Convert to vector.

undefined

Undefined LLA.

vector

Construct LLA from vector.

static azimuth_between(
lla_1: ostk.physics.coordinate.spherical.LLA,
lla_2: ostk.physics.coordinate.spherical.LLA,
ellipsoid_equatorial_radius: ostk.physics.unit.Length = Length.Undefined(),
ellipsoid_flattening: ostk.core.type.Real = Real.Undefined(),
) tuple[ostk.physics.unit.Angle, ostk.physics.unit.Angle]

Calculate the azimuth angles between two LLA coordinates. If ellipsoid parameters are not provided, values from the global Environment central celestial are used.

Parameters:
  • lla_1 (LLA) -- First LLA coordinate.

  • lla_2 (LLA) -- Second LLA coordinate.

  • ellipsoid_equatorial_radius (Length) -- Equatorial radius of the ellipsoid.

  • ellipsoid_flattening (float) -- Flattening of the ellipsoid.

Returns:

Azimuth.

Return type:

Angle

calculate_azimuth_to(
self: ostk.physics.coordinate.spherical.LLA,
lla: ostk.physics.coordinate.spherical.LLA,
ellipsoid_equatorial_radius: ostk.physics.unit.Length = Length.Undefined(),
ellipsoid_flattening: ostk.core.type.Real = Real.Undefined(),
) tuple[ostk.physics.unit.Angle, ostk.physics.unit.Angle]

Calculate the azimuth angles between this LLA coordinate and another LLA coordinate. If ellipsoid parameters are not provided, values from the global Environment central celestial are used.

Parameters:
  • lla (LLA) -- Another LLA coordinate.

  • ellipsoid_equatorial_radius (Length) -- Equatorial radius of the ellipsoid.

  • ellipsoid_flattening (float) -- Flattening of the ellipsoid.

Returns:

Azimuth.

Return type:

Angle

calculate_distance_to(
self: ostk.physics.coordinate.spherical.LLA,
lla: ostk.physics.coordinate.spherical.LLA,
ellipsoid_equatorial_radius: ostk.physics.unit.Length = Length.Undefined(),
ellipsoid_flattening: ostk.core.type.Real = Real.Undefined(),
) ostk.physics.unit.Length

Calculate the distance between this LLA coordinate and another LLA coordinate. If ellipsoid parameters are not provided, values from the global Environment central celestial are used.

Parameters:
  • lla (LLA) -- Another LLA coordinate.

  • ellipsoid_equatorial_radius (Length) -- Equatorial radius of the ellipsoid.

  • ellipsoid_flattening (float) -- Flattening of the ellipsoid.

Returns:

Distance.

Return type:

Length

calculate_forward(
self: ostk.physics.coordinate.spherical.LLA,
azimuth: ostk.physics.unit.Angle,
distance: ostk.physics.unit.Length,
ellipsoid_equatorial_radius: ostk.physics.unit.Length = Length.Undefined(),
ellipsoid_flattening: ostk.core.type.Real = Real.Undefined(),
) ostk.physics.coordinate.spherical.LLA

Propagate this LLA coordinate in provided direction and distance. The altitude of this coordinate is preserved in the returned coordinate. If ellipsoid parameters are not provided, values from the global Environment central celestial are used.

Parameters:
  • azimuth (Angle) -- Azimuth.

  • distance (Length) -- Distance.

  • ellipsoid_equatorial_radius (Length) -- Equatorial radius of the ellipsoid.

  • ellipsoid_flattening (float) -- Flattening of the ellipsoid.

Returns:

Propagated LLA coordinate, preserving this coordinate's altitude.

Return type:

LLA

calculate_intermediate_to(
self: ostk.physics.coordinate.spherical.LLA,
lla: ostk.physics.coordinate.spherical.LLA,
ratio: ostk.core.type.Real,
ellipsoid_equatorial_radius: ostk.physics.unit.Length = Length.Undefined(),
ellipsoid_flattening: ostk.core.type.Real = Real.Undefined(),
) ostk.physics.coordinate.spherical.LLA

Calculate a point between this LLA coordinate and another LLA coordinate. The altitude of the returned coordinate is linearly interpolated between the two coordinates' altitudes at the given ratio. If ellipsoid parameters are not provided, values from the global Environment central celestial are used.

Parameters:
  • lla (LLA) -- Another LLA coordinate.

  • ratio (Real) -- Ratio.

  • ellipsoid_equatorial_radius (Length) -- Equatorial radius of the ellipsoid.

  • ellipsoid_flattening (float) -- Flattening of the ellipsoid.

Returns:

A point between the two LLA coordinates, with altitude linearly interpolated between the two coordinates' altitudes.

Return type:

LLA

calculate_linspace_to(
self: ostk.physics.coordinate.spherical.LLA,
lla: ostk.physics.coordinate.spherical.LLA,
number_of_points: int,
ellipsoid_equatorial_radius: ostk.physics.unit.Length = Length.Undefined(),
ellipsoid_flattening: ostk.core.type.Real = Real.Undefined(),
) list[ostk.physics.coordinate.spherical.LLA]

Generate LLAs between this LLA coordinate and another LLA coordinate at a given interval. The altitude of each generated coordinate is linearly interpolated between the two coordinates' altitudes. If ellipsoid parameters are not provided, values from the global Environment central celestial are used.

Parameters:
  • lla (LLA) -- Another LLA coordinate.

  • number_of_points (Size) -- Number of points.

  • ellipsoid_equatorial_radius (Length) -- Equatorial radius of the ellipsoid.

  • ellipsoid_flattening (float) -- Flattening of the ellipsoid.

Returns:

List of LLA coordinates, with altitudes linearly interpolated between the two coordinates' altitudes.

Return type:

list[LLA]

static cartesian(
cartesian_coordinates: numpy.ndarray[numpy.float64[3, 1]],
ellipsoid_equatorial_radius: ostk.physics.unit.Length = Length.Undefined(),
ellipsoid_flattening: ostk.core.type.Real = Real.Undefined(),
) ostk.physics.coordinate.spherical.LLA

Construct LLA from Cartesian. If ellipsoid parameters are not provided, values from the global Environment central celestial are used.

Parameters:
  • cartesian_coordinates (numpy.ndarray) -- Cartesian coordinates.

  • ellipsoid_equatorial_radius (Length) -- Equatorial radius of the ellipsoid.

  • ellipsoid_flattening (float) -- Flattening of the ellipsoid.

Returns:

LLA.

Return type:

LLA

static distance_between(
lla_1: ostk.physics.coordinate.spherical.LLA,
lla_2: ostk.physics.coordinate.spherical.LLA,
ellipsoid_equatorial_radius: ostk.physics.unit.Length = Length.Undefined(),
ellipsoid_flattening: ostk.core.type.Real = Real.Undefined(),
) ostk.physics.unit.Length

Calculate the distance between two LLA coordinates. If ellipsoid parameters are not provided, values from the global Environment central celestial are used.

Parameters:
  • lla_1 (LLA) -- First LLA coordinate.

  • lla_2 (LLA) -- Second LLA coordinate.

  • ellipsoid_equatorial_radius (Length) -- Equatorial radius of the ellipsoid.

  • ellipsoid_flattening (float) -- Flattening of the ellipsoid.

Returns:

Distance.

Return type:

Length

static forward(
lla: ostk.physics.coordinate.spherical.LLA,
azimuth: ostk.physics.unit.Angle,
distance: ostk.physics.unit.Length,
ellipsoid_equatorial_radius: ostk.physics.unit.Length = Length.Undefined(),
ellipsoid_flattening: ostk.core.type.Real = Real.Undefined(),
) ostk.physics.coordinate.spherical.LLA

Propagate an LLA coordinate in provided direction and distance. The altitude of the provided coordinate is preserved in the returned coordinate. If ellipsoid parameters are not provided, values from the global Environment central celestial are used.

Parameters:
  • lla (LLA) -- LLA coordinate.

  • azimuth (Angle) -- Azimuth.

  • distance (Length) -- Distance.

  • ellipsoid_equatorial_radius (Length) -- Equatorial radius of the ellipsoid.

  • ellipsoid_flattening (float) -- Flattening of the ellipsoid.

Returns:

Propagated LLA coordinate, preserving the provided coordinate's altitude.

Return type:

LLA

static from_position(
position: ostk::physics::coordinate::Position,
celestial: ostk::physics::environment::object::Celestial = None,
) ostk.physics.coordinate.spherical.LLA

Construct LLA from position.

Parameters:
  • position (Position) -- Position.

  • celestial (Celestial) -- Celestial object. Defaults to None, in which case, values from the global Environment central celestial are used.

Returns:

LLA.

Return type:

LLA

get_altitude(
self: ostk.physics.coordinate.spherical.LLA,
) ostk.physics.unit.Length

Get altitude.

Returns:

Altitude.

Return type:

Length

get_latitude(self: ostk.physics.coordinate.spherical.LLA) ostk.physics.unit.Angle

Get latitude.

Returns:

Latitude.

Return type:

Angle

get_longitude(
self: ostk.physics.coordinate.spherical.LLA,
) ostk.physics.unit.Angle

Get longitude.

Returns:

Longitude.

Return type:

Angle

static intermediate_between(
lla_1: ostk.physics.coordinate.spherical.LLA,
lla_2: ostk.physics.coordinate.spherical.LLA,
ratio: ostk.core.type.Real,
ellipsoid_equatorial_radius: ostk.physics.unit.Length = Length.Undefined(),
ellipsoid_flattening: ostk.core.type.Real = Real.Undefined(),
) ostk.physics.coordinate.spherical.LLA

Calculate a point between two LLA coordinates. The altitude of the returned coordinate is linearly interpolated between the two coordinates' altitudes at the given ratio. If ellipsoid parameters are not provided, values from the global Environment central celestial are used.

Parameters:
  • lla_1 (LLA) -- First LLA coordinate.

  • lla_2 (LLA) -- Second LLA coordinate.

  • ratio (Real) -- Ratio.

  • ellipsoid_equatorial_radius (Length) -- Equatorial radius of the ellipsoid.

  • ellipsoid_flattening (float) -- Flattening of the ellipsoid.

Returns:

A point between the two LLA coordinates, with altitude linearly interpolated between the two coordinates' altitudes.

Return type:

LLA

is_defined(self: ostk.physics.coordinate.spherical.LLA) bool

Check if defined.

Returns:

True if defined.

Return type:

bool

static linspace(
lla_1: ostk.physics.coordinate.spherical.LLA,
lla_2: ostk.physics.coordinate.spherical.LLA,
number_of_points: int,
ellipsoid_equatorial_radius: ostk.physics.unit.Length = Length.Undefined(),
ellipsoid_flattening: ostk.core.type.Real = Real.Undefined(),
) list[ostk.physics.coordinate.spherical.LLA]

Generate LLAs between two LLA coordinates at a given interval. The altitude of each generated coordinate is linearly interpolated between the two coordinates' altitudes. If ellipsoid parameters are not provided, values from the global Environment central celestial are used.

Parameters:
  • lla_1 (LLA) -- First LLA coordinate.

  • lla_2 (LLA) -- Second LLA coordinate.

  • number_of_points (Size) -- Number of points.

  • ellipsoid_equatorial_radius (Length) -- Equatorial radius of the ellipsoid.

  • ellipsoid_flattening (float) -- Flattening of the ellipsoid.

Returns:

List of LLA coordinates, with altitudes linearly interpolated between the two coordinates' altitudes.

Return type:

list[LLA]

on_surface(
self: ostk.physics.coordinate.spherical.LLA,
) ostk.physics.coordinate.spherical.LLA

Get LLA on surface (Altitude is 0.0).

Returns:

LLA on surface.

Return type:

LLA

to_cartesian(
self: ostk.physics.coordinate.spherical.LLA,
ellipsoid_equatorial_radius: ostk.physics.unit.Length = Length.Undefined(),
ellipsoid_flattening: ostk.core.type.Real = Real.Undefined(),
) numpy.ndarray[numpy.float64[3, 1]]

Convert to Cartesian. If ellipsoid parameters are not provided, values from the global Environment central celestial are used.

Parameters:
  • ellipsoid_equatorial_radius (Length) -- Equatorial radius of the ellipsoid.

  • ellipsoid_flattening (float) -- Flattening of the ellipsoid.

Returns:

Cartesian.

Return type:

numpy.ndarray

to_string(self: ostk.physics.coordinate.spherical.LLA) ostk.core.type.String

Convert to string.

Returns:

String representation.

Return type:

String

to_vector(
self: ostk.physics.coordinate.spherical.LLA,
) numpy.ndarray[numpy.float64[3, 1]]

Convert to vector.

Returns:

Vector.

Return type:

numpy.ndarray

static undefined() ostk.physics.coordinate.spherical.LLA

Undefined LLA.

Returns:

Undefined LLA.

Return type:

LLA

static vector(
vector: numpy.ndarray[numpy.float64[3, 1]],
) ostk.physics.coordinate.spherical.LLA

Construct LLA from vector.

Parameters:

vector (numpy.ndarray) -- Vector.

Returns:

LLA.

Return type:

LLA