Package pygeodesy :: Module ellipsoidalNvector
[frames] | no frames]

Module ellipsoidalNvector

Ellipsoidal, N-vector-based geodesy.

Ellipsoidal classes geodetic LatLon, geocentric (ECEF) Cartesian and Nvector and DEPRECATED Ned and functions meanOf, sumOf and DEPRECATED toNed.

Pure Python implementation of n-vector-based geodetic (lat-/longitude) methods by (C) Chris Veness 2011-2024 published under the same MIT Licence**, see Vector-based geodesy.

These classes and functions work with: (a) geodetic lat-/longitude points on the earth's surface and (b) 3-D vectors used as n-vectors representing points on the earth's surface or vectors normal to the plane of a great circle.

See also Kenneth Gade 'A Non-singular Horizontal Position Representation', The Journal of Navigation (2010), vol 63, nr 3, pp 395-417.


Version: 24.10.19

Classes
  Ned
DEPRECATED on 2024.02.04, use class pygeodesy.Ned.
  Cartesian
Extended to convert geocentric, Cartesian points to Nvector and n-vector-based, geodetic LatLon.
  LatLon
An n-vector-based, ellipsoidal LatLon point.
  Nvector
An n-vector is a position representation using a (unit) vector normal to the earth ellipsoid.
Functions
 
meanOf(points, datum=Datum(name='WGS84', ellipsoid=Ellipsoids.WGS84, transform=Tran..., height=None, wrap=False, **LatLon_and_kwds)
Compute the geographic mean of several points.
 
sumOf(nvectors, Vector=<class 'pygeodesy.ellipsoidalNvector.Nvector'>, h=None, **Vector_kwds)
Return the vectorial sum of two or more n-vectors.
 
toNed(distance, bearing, elevation, Ned=<class 'pygeodesy.ellipsoidalNvector.Ned'>, **name)
DEPRECATED, use pygeodesy.Aer(bearing, elevation, distance).xyzLocal.toNed(Ned, name=name) or XyzLocal(pygeodesy.Aer(bearing, elevation, distance)).toNed(Ned, name=name).
Variables
  __all__ = _ALL_LAZY.ellipsoidalNvector
Function Details

meanOf (points, datum=Datum(name='WGS84', ellipsoid=Ellipsoids.WGS84, transform=Tran..., height=None, wrap=False, **LatLon_and_kwds)

 

Compute the geographic mean of several points.

Arguments:
  • points - Points to be averaged (LatLon[]).
  • datum - Optional datum to use (Datum).
  • height - Optional height at mean point, overriding the mean height (meter).
  • wrap - If True, wrap or normalize points (bool).
  • LatLon_and_kwds - Optional LatLon class to return the mean points (or None) and additional LatLon keyword arguments, ignored if LatLon is None.
Returns:
Geographic mean point and height (LatLon) or if LatLon is None, an Ecef9Tuple(x, y, z, lat, lon, height, C, M, datum) with C and M if available.
Raises:
  • ValueError - Insufficient number of points.

sumOf (nvectors, Vector=<class 'pygeodesy.ellipsoidalNvector.Nvector'>, h=None, **Vector_kwds)

 

Return the vectorial sum of two or more n-vectors.

Arguments:
  • nvectors - Vectors to be added (Nvector[]).
  • Vector - Optional class for the vectorial sum (Nvector).
  • h - Optional height, overriding the mean height (meter).
  • Vector_kwds - Optional, additional Vector keyword arguments, ignored if Vector is None.
Returns:
Vectorial sum (Vector).
Raises:

toNed (distance, bearing, elevation, Ned=<class 'pygeodesy.ellipsoidalNvector.Ned'>, **name)

 

DEPRECATED, use pygeodesy.Aer(bearing, elevation, distance).xyzLocal.toNed(Ned, name=name) or XyzLocal(pygeodesy.Aer(bearing, elevation, distance)).toNed(Ned, name=name).

Create an NED vector from distance, bearing and elevation (in local coordinate system).

Arguments:
  • distance - NED vector length (meter).
  • bearing - NED vector bearing (compass degrees360).
  • elevation - NED vector elevation from local coordinate frame horizontal (degrees).
  • Ned - Optional class to return the NED (Ned) or None.
  • name - Optional name=NN (str).
Returns:
An NED vector equivalent to this distance, bearing and elevation (DEPRECATED Ned) or a DEPRECATED Ned3Tuple(north, east, down) if Ned is None.
Decorators:
  • @deprecated_function
Raises:
  • ValueError - Invalid distance, bearing or elevation.