Package pygeodesy :: Module azimuthal :: Class Equidistant |
[frames] | no frames]

# Class Equidistant

      object --+
               |
    named._Named --+
                   |
    named._NamedBase --+
                       |
          _AzimuthalBase --+
                           |
                          Equidistant

Azimuthal equidistant projection for the sphere***, see Snyder, pp 195-197 and MathWorld-Wolfram.

Note: Results from this Equidistant and an EquidistantExact, EquidistantGeodSolve or EquidistantKarney projection `may differ` by 10% or more. For an example, see method `testDiscrepancies` in module `testAzimuthal.py`.

Instance Methods
__init__(self, lat0, lon0, datum=None, **name) New azimuthal projection. |
forward(self, lat, lon, **name) Convert a geodetic location to azimuthal equidistant east- and northing. |
reverse(self, x, y, **name_LatLon_and_kwds) Convert an azimuthal equidistant location to geodetic lat- and longitude. |
Inherited from `_AzimuthalBase`: `reset`, `toRepr`, `toStr` Inherited from `named._NamedBase`: `__repr__`, `__str__`, `others` 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 `_AzimuthalBase`: `a`, `datum`, `equatoradius`, `f`, `flattening`, `lat0`, `latlon0`, `lon0`, `majoradius`, `radius` Inherited from `named._Named`: `classname`, `classnaming`, `iteration`, `name`, `named`, `named2`, `named3`, `named4`, `sizeof`, `typename` Inherited from `object`: `__class__`

Method Details

### __init__ (self, lat0, lon0, datum=None, **name) (Constructor) |
New azimuthal projection. Arguments: `lat0` - Latitude of the center point (`degrees90`). `lon0` - Longitude of the center point (`degrees180`). `datum` - Optional datum or ellipsoid (Datum, Ellipsoid, Ellipsoid2 or a_f2Tuple) or scalar earth radius (`meter`). `name` - Optional `name=NN` for the projection (`str`). Raises: `AzimuthalError` - Invalid `lat0` or `lon0` or (spherical) `datum`. `TypeError` - Invalid `datum`. Overrides: object.__init__

### forward (self, lat, lon, **name) |
Convert a geodetic location to azimuthal equidistant east- and northing. Arguments: `lat` - Latitude of the location (`degrees90`). `lon` - Longitude of the location (`degrees180`). `name` - Optional `name=NN` for the location (`str`). Returns: An Azimuthal7Tuple`(x, y, lat, lon, azimuth, scale, datum)` with easting `x` and northing `y` of point in `meter` and `lat` and `lon` in `degrees` and `azimuth` clockwise from true North. The `scale` of the projection is `1` in radial direction and is `1 / reciprocal` in the direction perpendicular to this. Raises: `AzimuthalError` - Invalid `lat` or `lon`. Overrides: _AzimuthalBase.forward Note: The `scale` will be `-1` if `(lat, lon)` is antipodal to the projection center `(lat0, lon0)`.

### reverse (self, x, y, **name_LatLon_and_kwds) |
Convert an azimuthal equidistant location to geodetic lat- and longitude. Arguments: `x` - Easting of the location (`meter`). `y` - Northing of the location (`meter`). `name_LatLon_and_kwds` - Optional `name=NN` and class `LatLon=None` to use and optionally, additional `LatLon` keyword arguments, ignored if `LatLon is None`. Returns: The geodetic (`LatLon`) or if `LatLon is None` an Azimuthal7Tuple`(x, y, lat, lon, azimuth, scale, datum)`. Overrides: _AzimuthalBase.reverse Note: The `lat` will be in the range `[-90..90] degrees` and `lon` in the range `[-180..180] degrees`. The `scale` of the projection is `1` in radial direction, `azimuth` clockwise from true North and is `1 / reciprocal` in the direction perpendicular to this.