Package pygeodesy :: Module ecef :: Class EcefVeness |
[frames] | no frames]

# Class EcefVeness

      object --+
               |
    named._Named --+
                   |
    named._NamedBase --+
                       |
               _EcefBase --+
                           |
                          EcefVeness

Conversion between geodetic and geocentric, Earth-Centered, Earth-Fixed (ECEF) coordinates transcoded from Chris Veness' JavaScript classes LatLonEllipsoidal, Cartesian.

See Also: A Guide to Coordinate Systems in Great Britain, section B) Converting between 3D Cartesian and ellipsoidal latitude, longitude and height coordinates.

Instance Methods
reverse(self, xyz, y=None, z=None, M=None, **lon00_name) Conversion from geocentric `(x, y, z)` to geodetic `(lat, lon, height)` transcoded from Chris Veness' JavaScript. |
Inherited from `_EcefBase`: `__eq__`, `__init__`, `forward`, `forward_`, `toStr` Inherited from `named._NamedBase`: `__repr__`, `__str__`, `others`, `toRepr` Inherited from `named._Named`: `__format__`, `__imatmul__`, `__matmul__`, `__rmatmul__`, `attrs`, `classof`, `copy`, `dup`, `methodname`, `rename`, `renamed`, `toStr2` Inherited from `object`: `__delattr__`, `__getattribute__`, `__hash__`, `__new__`, `__reduce__`, `__reduce_ex__`, `__setattr__`, `__sizeof__`, `__subclasshook__`

Properties
Inherited from `_EcefBase`: `a`, `datum`, `ellipsoid`, `equatoradius`, `equatorialRadius`, `f`, `flattening`, `lon00` Inherited from `named._Named`: `classname`, `classnaming`, `iteration`, `name`, `named`, `named2`, `named3`, `named4`, `sizeof`, `typename` Inherited from `object`: `__class__`

Method Details

### reverse (self, xyz, y=None, z=None, M=None, **lon00_name) |
Conversion from geocentric `(x, y, z)` to geodetic `(lat, lon, height)` transcoded from Chris Veness' JavaScript. Uses B. R. Bowring’s formulation for μm precision in concise form The accuracy of geodetic latitude and height equations, Survey Review, Vol 28, 218, Oct 1985. Arguments: `xyz` - A geocentric (`Cartesian`, Ecef9Tuple) or `scalar` ECEF `x` coordinate (`meter`). `y` - ECEF `y` coordinate for `scalar` `xyz` and `z` (`meter`). `z` - ECEF `z` coordinate for `scalar` `xyz` and `y` (`meter`). `M` - Ignored, rotation matrix `M` not available. `lon00_name` - Optional `name=NN` (`str`) and optional keyword argument `lon00=INT0` (`degrees`), an arbitrary "polar" longitude returned if `x=0` and `y=0`, see property `lon00`. Returns: An Ecef9Tuple`(x, y, z, lat, lon, height, C, M, datum)` with geodetic coordinates `(lat, lon, height)` for the given geocentric ones `(x, y, z)`, case `C`, `M=None` always and `datum` if available. Raises: `EcefError` - Invalid `xyz` or `scalar` `x` or `y` and/or `z` not `scalar` for `scalar` `xyz`. Overrides: _EcefBase.reverse See Also: Toms, Ralph M. An Efficient Algorithm for Geocentric to Geodetic Coordinate Conversion, Sept 1995 and An Improved Algorithm for Geocentric to Geodetic Coordinate Conversion, Apr 1996, both from Lawrence Livermore National Laboratory (LLNL) and Sudano, John J, An exact conversion from an Earth-centered coordinate system to latitude longitude and altitude.