Package pygeodesy :: Module ltp :: Class LocalCartesian
[frames] | no frames]

Class LocalCartesian

  object --+        
           |        
named._Named --+    
               |    
named._NamedBase --+
                   |
                  LocalCartesian
Known Subclasses:

Conversion between geodetic (lat, lon, height) and local cartesian (x, y, z) coordinates with geodetic origin (lat0, lon0, height0), transcoded from Karney's C++ class LocalCartesian.

The z axis is normal to the ellipsoid, the y axis points due North. The plane z = -height0 is tangent to the ellipsoid.

The conversions all take place via geocentric coordinates using a geocentric EcefKarney, by default the WGS84 datum/ellipsoid.


See Also: Class Ltp.

Instance Methods
 
__init__(self, latlonh0=0, lon0=0, height0=0, ecef=None, name='')
New LocalCartesian converter.
 
__eq__(self, other)
Compare this and an other instance.
 
forward(self, latlonh, lon=None, height=0, M=False, name='')
Convert geodetic (lat, lon, height) to local cartesian (x, y, z).
 
reset(self, latlonh0=0, lon0=0, height0=0, name='')
Reset the (geodetic) origin.
 
reverse(self, xyz, y=None, z=None, M=False, name='')
Convert local (x, y, z) to geodetic (lat, lon, height).
 
toStr(self, prec=9, **unused)
Return this LocalCartesian as a string.

Inherited from named._NamedBase: __repr__, __str__, others, toRepr

Inherited from named._Named: __imatmul__, __matmul__, __rmatmul__, attrs, classof, copy, dup, methodname, rename, toStr2

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __setattr__, __sizeof__, __subclasshook__

Properties
  datum
Get the ECEF converter's datum (Datum).
  ecef
Get the ECEF converter (EcefKarney).
  height0
Get origin's height (meter).
  lat0
Get origin's latitude (degrees).
  lon0
Get origin's longitude (degrees).
  M
Get the rotation matrix (EcefMatrix).

Inherited from named._Named: classname, classnaming, iteration, name, named, named2, named3, named4

Inherited from object: __class__

Method Details

__init__ (self, latlonh0=0, lon0=0, height0=0, ecef=None, name='')
(Constructor)

 

New LocalCartesian converter.

Arguments:
  • latlonh0 - Either a LatLon, Ltp, Ecef9Tuple or scalar latitude of the (goedetic) origin (degrees).
  • lon0 - Optional scalar longitude of the (goedetic) origin scalar latlonh0 (degrees).
  • height0 - Optional origin height (meter), vertically above (or below) the surface of the ellipsoid.
  • ecef - An ECEF converter (EcefKarney).
  • name - Optional name (str).
Raises:
  • LocalError - If latlonh0 not LatLon, Ecef9Tuple, scalar or invalid or if lon0 not scalar for scalar latlonh0 or invalid or if height0 invalid.
  • TypeError - Invalid ecef, not EcefKarney.
Overrides: object.__init__

Note: If Blatlonh0 is Ltp, only the lat-, longitude and height are duplicated, not the ECEF converter.

__eq__ (self, other)
(Equality operator)

 

Compare this and an other instance.

Arguments:
Returns:
True if equal, False otherwise.

forward (self, latlonh, lon=None, height=0, M=False, name='')

 

Convert geodetic (lat, lon, height) to local cartesian (x, y, z).

Arguments:
  • latlonh - Either a LatLon, a Ltp, an Ecef9Tuple or scalar (geodetic) latitude (degrees).
  • lon - Optional scalar (geodetic) longitude for scalar latlonh (degrees).
  • height - Optional height (meter), vertically above (or below) the surface of the ellipsoid.
  • M - Optionally, return the rotation EcefMatrix (bool).
  • name - Optional name (str).
Returns:
A Local9Tuple(x, y, z, lat, lon, height, ltp, ecef, M) with local x, y, z, geodetic (lat, lon, height, this ltp, ecef (Ecef9Tuple) with geocentric x, y, z (and geodetic lat, lon, height) and the concatenated rotation matrix M (EcefMatrix) if requested.
Raises:
  • LocalError - If latlonh not scalar, LatLon, Ltp, Ecef9Tuple or invalid or if lon not scalar for scalar latlonh or invalid or if height invalid.

reset (self, latlonh0=0, lon0=0, height0=0, name='')

 

Reset the (geodetic) origin.

Arguments:
  • latlonh0 - Either a LatLon, an Ecef9Tuple or scalar latitude of the origin (degrees).
  • lon0 - Optional scalar longitude of the origin for scalar latlonh0 (degrees).
  • height0 - Optional origin height (meter), vertically above (or below) the surface of the ellipsoid.
  • name - Optional, new name (str).
Raises:
  • LocalError - If latlonh0 not LatLon, Ecef9Tuple, scalar or invalid or if lon0 not scalar for scalar latlonh0 or invalid or if height0 invalid.

reverse (self, xyz, y=None, z=None, M=False, name='')

 

Convert local (x, y, z) to geodetic (lat, lon, height).

Arguments:
  • xyz - A local (XyzLocal, Enu, Ned, Aer, Local9Tuple) or local x coordinate (scalar).
  • y - Local y coordinate for scalar xyz and z (meter).
  • z - Local z coordinate for scalar xyz and y (meter).
  • M - Optionally, return the concatenated rotation EcefMatrix, iff avaialble (bool).
  • name - Optional name (str).
Returns:
An Local9Tuple(x, y, z, lat, lon, height, ltp, ecef, M) with local x, y, z, geodetic lat, lon, height, this ltp, an ecef (Ecef9Tuple) with the geocentric x, y, z (and geodetic lat, lon, height) and the concatenated rotation matrix M (EcefMatrix) if requested.
Raises:
  • LocalError - Invalid xyz or scalar x or y and/or z not scalar for scalar xyz.

toStr (self, prec=9, **unused)

 

Return this LocalCartesian as a string.

Arguments:
  • prec - Precision, number of (decimal) digits (0..9).
Returns:
This LocalCartesian representation (str).
Overrides: named._Named.toStr

Property Details

datum

Get the ECEF converter's datum (Datum).

Get method:
datum(self) - Get the ECEF converter's datum (Datum).
Set method:
_fset_error(inst, val) - Throws an AttributeError, always.
Delete Method:
_fdel(inst) - Zap the cached/memoized property value.

ecef

Get the ECEF converter (EcefKarney).

Get method:
ecef(self) - Get the ECEF converter (EcefKarney).
Set method:
_fset_error(inst, val) - Throws an AttributeError, always.
Delete Method:
_fdel(inst) - Zap the cached/memoized property value.

height0

Get origin's height (meter).

Get method:
height0(self) - Get origin's height (meter).
Set method:
_fset_error(inst, val) - Throws an AttributeError, always.
Delete Method:
_fdel(inst) - Zap the cached/memoized property value.

lat0

Get origin's latitude (degrees).

Get method:
lat0(self) - Get origin's latitude (degrees).
Set method:
_fset_error(inst, val) - Throws an AttributeError, always.
Delete Method:
_fdel(inst) - Zap the cached/memoized property value.

lon0

Get origin's longitude (degrees).

Get method:
lon0(self) - Get origin's longitude (degrees).
Set method:
_fset_error(inst, val) - Throws an AttributeError, always.
Delete Method:
_fdel(inst) - Zap the cached/memoized property value.

M

Get the rotation matrix (EcefMatrix).

Get method:
M(self) - Get the rotation matrix (EcefMatrix).
Set method:
_fset_error(inst, val) - Throws an AttributeError, always.
Delete Method:
_fdel(inst) - Zap the cached/memoized property value.