[frames] | no frames]

[ Module Hierarchy | Class Hierarchy ]

# Class Hierarchy

- object: The most base type
  - exceptions.BaseException: Common base class for all exceptions
    - exceptions.Exception: Common base class for all non-exit exceptions.
      - exceptions.StandardError: Base class for all standard Python exceptions that do not represent interpreter exiting.
        - exceptions.ImportError: Import can't find module, or can't find name in module.
          - pygeodesy.lazily.LazyImportError: Raised if `lazy import` is not supported, disabled or failed some other way.
        - exceptions.ValueError: Inappropriate argument value (of correct type).
          - pygeodesy.errors._ValueError: (INTERNAL) Format a `ValueError` without exception chaining.
            - pygeodesy.albers.AlbersError: An AlbersEqualArea, AlbersEqualArea2, AlbersEqualArea4, AlbersEqualAreaCylindrical, AlbersEqualAreaNorth, AlbersEqualAreaSouth or Albers7Tuple issue.
            - pygeodesy.azimuthal.AzimuthalError: An azimuthal Equidistant, EquidistantKarney, Gnomonic, LambertEqualArea, Orthographic, Stereographic or Azimuthal7Tuple issue.
            - pygeodesy.css.CSSError: Cassini-Soldner (CSS) conversion or other Css issue.
            - pygeodesy.clipy.ClipError: Clip box or clip region issue.
            - pygeodesy.errors.CrossError: Error raised for zero or near-zero vectorial cross products, occurring for coincident or colinear points, paths or bearings.
            - pygeodesy.epsg.EPSGError: EPSG encode, decode or other Epsg issue.
            - pygeodesy.ecef.EcefError: An ECEF or `Ecef*` related issue.
            - pygeodesy.elliptic.EllipticError: Elliptic integral, function, convergence or other Elliptic issue.
            - pygeodesy.gars.GARSError: Global Area Reference System (GARS) encode, decode or other Garef issue.
            - pygeodesy.geohash.GeohashError: Geohash encode, decode or other Geohash issue.
            - pygeodesy.errors.IntersectionError: Error raised for path or circle intersection issues.
            - pygeodesy.lcc.LCCError: Lambert Conformal Conic `LCC` or other Lcc issue.
            - pygeodesy.errors.LenError: Error raised for mis-matching `len` values.
            - pygeodesy.errors.LimitError: Error raised for lat- or longitudinal deltas exceeding the `limit` in functions equirectangular and equirectangular_ and `nearestOn*` and `simplify*` functions or methods.
            - pygeodesy.mgrs.MGRSError: Military Grid Reference System (MGRS) parse or other Mgrs issue.
            - pygeodesy.osgr.OSGRError: Ordinance Survey Grid References (OSGR) parse or other Osgr issue.
            - pygeodesy.errors.ParseError: Error parsing degrees, radians or several other formats.
            - pygeodesy.errors.PointsError: Error for an insufficient number of points.
              - pygeodesy.frechet.FrechetError: Fréchet issue.
              - pygeodesy.hausdorff.HausdorffError: Hausdorff issue.
              - pygeodesy.heights.HeightError: Height interpolator `Height...` or interpolation issue.
                - pygeodesy.geoids.GeoidError: Geoid interpolator `Geoid...` or interpolation issue.
                  - pygeodesy.geoids.PGMError: Issue parsing or cropping an `egm*.pgm` geoid dataset.
              - pygeodesy.errors.SciPyError: Error raised for `SciPy` errors.
              - pygeodesy.errors.SciPyWarning: Error thrown for `SciPy` warnings.
            - pygeodesy.errors.RangeError: Error raised for lat- or longitude values outside the `clip`, `clipLat`, `clipLon` or `limit` range in function clipDegrees, clipRadians, parse3llh, parseDMS, parseDMS2 or parseRad.
            - pygeodesy.errors.TRFError: Terrestrial Reference Frame (TRF), Epoch, RefFrame or RefFrame conversion issue.
              - pygeodesy.deprecated.RefFrameError: DEPRECATED, use class TRFError.
            - pygeodesy.ups.UPSError: Universal Polar Stereographic (UPS) parse or other Ups issue.
            - pygeodesy.utm.UTMError: Universal Transverse Mercator (UTM parse or other Utm issue.
              - pygeodesy.etm.ETMError: Exact Transverse Mercator (ETM) parse, projection or other Etm issue.
            - pygeodesy.utmups.UTMUPSError: Universal Transverse Mercator/Universal Polar Stereographic (UTM/UPS) parse, validate or other issue.
            - pygeodesy.errors.UnitError: Default exception for units issues.
            - pygeodesy.vector3d.VectorError: Vector3d or `*Nvector` issue.
            - pygeodesy.ellipsoidalVincenty.VincentyError: Error raised from Vincenty's `direct` and `inverse` methods for coincident points or lack of convergence.
            - pygeodesy.wgrs.WGRSError: World Geographic Reference System (WGRS) encode, decode or other Georef issue.
            - pygeodesy.webmercator.WebMercatorError: Web Mercator (WM) parser or Wm issue.
  - _abcoll.Container
    - _abcoll.Sequence: All the operations on a read-only sequence.
      - pygeodesy.points._Basequence: (INTERNAL) Base class.
        - pygeodesy.points.LatLon2psxy: Wrapper for `LatLon` points as "on-the-fly" pseudo-xy coordinates.
        - pygeodesy.points._Array2LatLon: Base class for Numpy2LatLon or Tuple2LatLon.
          - pygeodesy.points.Numpy2LatLon: Wrapper for `NumPy` arrays as "on-the-fly" `LatLon` points.
          - pygeodesy.points.Tuple2LatLon: Wrapper for tuple sequences as "on-the-fly" `LatLon` points.
  - pygeodesy.fmath.Fsum: Precision summation similar to standard Python function `math.fsum`.
    - pygeodesy.fmath.Fdot: Precision dot product.
    - pygeodesy.fmath.Fhorner: Precision polynomial evaluation using the Horner form.
    - pygeodesy.fmath.Fpolynomial: Precision polynomial evaluation.
  - _abcoll.Iterable
    - _abcoll.Sequence: All the operations on a read-only sequence.
      - pygeodesy.points._Basequence: (INTERNAL) Base class.
        - pygeodesy.points.LatLon2psxy: Wrapper for `LatLon` points as "on-the-fly" pseudo-xy coordinates.
        - pygeodesy.points._Array2LatLon: Base class for Numpy2LatLon or Tuple2LatLon.
          - pygeodesy.points.Numpy2LatLon: Wrapper for `NumPy` arrays as "on-the-fly" `LatLon` points.
          - pygeodesy.points.Tuple2LatLon: Wrapper for tuple sequences as "on-the-fly" `LatLon` points.
  - pygeodesy.points.LatLon_: Low-overhead `LatLon` class for Numpy2LatLon and Tuple2LatLon.
  - _abcoll.Sized
    - _abcoll.Sequence: All the operations on a read-only sequence.
      - pygeodesy.points._Basequence: (INTERNAL) Base class.
        - pygeodesy.points.LatLon2psxy: Wrapper for `LatLon` points as "on-the-fly" pseudo-xy coordinates.
        - pygeodesy.points._Array2LatLon: Base class for Numpy2LatLon or Tuple2LatLon.
          - pygeodesy.points.Numpy2LatLon: Wrapper for `NumPy` arrays as "on-the-fly" `LatLon` points.
          - pygeodesy.points.Tuple2LatLon: Wrapper for tuple sequences as "on-the-fly" `LatLon` points.
  - pygeodesy.named._Named: (INTERNAL) Root class for named objects.
    - pygeodesy.elliptic.Elliptic: Elliptic integrals and functions.
    - pygeodesy.frechet.Frechet: Frechet base class, requires method Frechet.distance to be overloaded.
      - pygeodesy.frechet.FrechetDegrees: Frechet base class for distances in `degrees` from `LatLon` points in `degrees`.
        - pygeodesy.frechet.FrechetKarney: Compute the `Frechet` distance based on the angular distance in `degrees` from Karney's geographiclib Geodesic Inverse method.
      - pygeodesy.frechet.FrechetDistanceTo: Compute the `Frechet` distance based on the distance from the points' `LatLon.distanceTo` method, conventionally in `meter`.
      - pygeodesy.frechet.FrechetRadians: Frechet base class for distances in `radians` or `radians squared` from `LatLon` points converted from `degrees` to `radians`.
        - pygeodesy.frechet.FrechetCosineAndoyerLambert: Compute the `Frechet` distance based on the angular distance in `radians` from function cosineAndoyerLambert_.
        - pygeodesy.frechet.FrechetCosineForsytheAndoyerLambert: Compute the `Frechet` distance based on the angular distance in `radians` from function cosineForsytheAndoyerLambert_.
        - pygeodesy.frechet.FrechetCosineLaw: Compute the `Frechet` distance based on the angular distance in `radians` from function cosineLaw_.
        - pygeodesy.frechet.FrechetEquirectangular: Compute the `Frechet` distance based on the `equirectangular` distance in `radians squared` like function equirectangular_.
        - pygeodesy.frechet.FrechetEuclidean: Compute the `Frechet` distance based on the `Euclidean` distance in `radians` from function euclidean_.
        - pygeodesy.frechet.FrechetFlatLocal: Compute the `Frechet` distance based on the angular distance in `radians squared` like function flatLocal_/hubeny_.
          - pygeodesy.frechet.FrechetHubeny: Compute the `Frechet` distance based on the angular distance in `radians squared` like function flatLocal_/hubeny_.
        - pygeodesy.frechet.FrechetFlatPolar: Compute the `Frechet` distance based on the angular distance in `radians` from function flatPolar_.
        - pygeodesy.frechet.FrechetHaversine: Compute the `Frechet` distance based on the angular distance in `radians` from function haversine_.
        - pygeodesy.frechet.FrechetThomas: Compute the `Frechet` distance based on the angular distance in `radians` from function thomas_.
        - pygeodesy.frechet.FrechetVincentys: Compute the `Frechet` distance based on the angular distance in `radians` from function vincentys_.
    - pygeodesy.hausdorff.Hausdorff: Hausdorff base class, requires method Hausdorff.distance to be overloaded.
      - pygeodesy.hausdorff.HausdorffDegrees: Hausdorff base class for distances from `LatLon` points in `degrees`.
        - pygeodesy.hausdorff.HausdorffKarney: Compute the `Hausdorff` distance based on the angular distance in `degrees` from Karney's geographiclib Geodesic Inverse method.
      - pygeodesy.hausdorff.HausdorffDistanceTo: Compute the `Hausdorff` distance based on the distance from the points' `LatLon.distanceTo` method, conventionally in `meter`.
      - pygeodesy.hausdorff.HausdorffRadians: Hausdorff base class for distances from `LatLon` points converted from `degrees` to `radians`.
        - pygeodesy.hausdorff.HausdorffCosineAndoyerLambert: Compute the `Hausdorff` distance based on the angular distance in `radians` from function cosineAndoyerLambert_.
        - pygeodesy.hausdorff.HausdorffCosineForsytheAndoyerLambert: Compute the `Hausdorff` distance based on the angular distance in `radians` from function cosineForsytheAndoyerLambert_.
        - pygeodesy.hausdorff.HausdorffCosineLaw: Compute the `Hausdorff` distance based on the angular distance in `radians` from function cosineLaw_.
        - pygeodesy.hausdorff.HausdorffEquirectangular: Compute the `Hausdorff` distance based on the `equirectangular` distance in `radians squared` like function equirectangular_.
        - pygeodesy.hausdorff.HausdorffEuclidean: Compute the `Hausdorff` distance based on the `Euclidean` distance in `radians` from function euclidean_.
        - pygeodesy.hausdorff.HausdorffFlatLocal: Compute the `Hausdorff` distance based on the angular distance in `radians squared` like function flatLocal_/hubeny_.
          - pygeodesy.hausdorff.HausdorffHubeny: Compute the `Hausdorff` distance based on the angular distance in `radians squared` like function flatLocal_/hubeny_.
        - pygeodesy.hausdorff.HausdorffFlatPolar: Compute the `Hausdorff` distance based on the angular distance in `radians` from function flatPolar_.
        - pygeodesy.hausdorff.HausdorffHaversine: Compute the `Hausdorff` distance based on the angular distance in `radians` from function haversine_.
        - pygeodesy.hausdorff.HausdorffThomas: Compute the `Hausdorff` distance based on the angular distance in `radians` from function thomas_.
        - pygeodesy.hausdorff.HausdorffVincentys: Compute the `Hausdorff` distance based on the angular distance in `radians` from function vincentys_.
    - pygeodesy.ellipsoidalNvector.Ned: North-Eeast-Down (NED), also known as Local Tangent Plane (LTP), is a vector in the local coordinate frame of a body.
    - pygeodesy.heights._HeightBase: (INTERNAL) Interpolator base class.
      - pygeodesy.heights.HeightCubic: Height interpolator based on `SciPy` interp2d `kind='cubic'`.
        - pygeodesy.heights.HeightLinear: Height interpolator based on `SciPy` interp2d `kind='linear'`.
      - pygeodesy.heights.HeightLSQBiSpline: Height interpolator using `SciPy` LSQSphereBivariateSpline.
      - pygeodesy.heights.HeightSmoothBiSpline: Height interpolator using `SciPy` SmoothSphereBivariateSpline.
      - pygeodesy.geoids._GeoidBase: (INTERNAL) Base class for `Geoid...`s.
        - pygeodesy.geoids.GeoidG2012B: Geoid height interpolator for GEOID12B Model grids CONUS, Alaska, Hawaii, Guam and Northern Mariana Islands, Puerto Rico and U.S. Virgin Islands and American Samoa based on `SciPy` RectBivariateSpline or interp2d interpolation.
        - pygeodesy.geoids.GeoidKarney: Geoid height interpolator for Karney's GeographicLib Earth Gravitational Model (EGM) geoid egm*.pgm datasets using bilinear or cubic interpolation and caching in pure Python transcribed from Karney's C++ class Geoid.
        - pygeodesy.geoids.GeoidPGM: Geoid height interpolator for Karney's GeographicLib Earth Gravitational Model (EGM) geoid egm*.pgm datasets but based on `SciPy` RectBivariateSpline or interp2d interpolation.
      - pygeodesy.heights._HeightIDW: (INTERNAL) Base class for Inverse Distance Weighting (IDW) height interpolators.
        - pygeodesy.heights.HeightIDWcosineAndoyerLambert: Height interpolator using Inverse Distance Weighting (IDW) and the angular distance in `radians` from function cosineAndoyerLambert_.
        - pygeodesy.heights.HeightIDWcosineForsytheAndoyerLambert: Height interpolator using Inverse Distance Weighting (IDW) and the angular distance in `radians` from function cosineForsytheAndoyerLambert_.
        - pygeodesy.heights.HeightIDWcosineLaw: Height interpolator using Inverse Distance Weighting (IDW) and the angular distance in `radians` from function cosineLaw_.
        - pygeodesy.heights.HeightIDWdistanceTo: Height interpolator using Inverse Distance Weighting (IDW) and the distance from the points' `LatLon.distanceTo` method, conventionally in `meter`.
        - pygeodesy.heights.HeightIDWequirectangular: Height interpolator using Inverse Distance Weighting (IDW) and the angular distance in `radians squared` like function equirectangular_.
          - pygeodesy.deprecated.HeightIDW2: DEPRECATED, use class HeightIDWequirectangular.
        - pygeodesy.heights.HeightIDWeuclidean: Height interpolator using Inverse Distance Weighting (IDW) and the angular distance in `radians` from function euclidean_.
          - pygeodesy.deprecated.HeightIDW: DEPRECATED, use class HeightIDWeuclidean.
        - pygeodesy.heights.HeightIDWflatLocal: Height interpolator using Inverse Distance Weighting (IDW) and the angular distance in `radians squared` like function flatLocal_/hubeny_.
          - pygeodesy.heights.HeightIDWhubeny: Height interpolator using Inverse Distance Weighting (IDW) and the angular distance in `radians squared` like function flatLocal_/hubeny_.
        - pygeodesy.heights.HeightIDWflatPolar: Height interpolator using Inverse Distance Weighting (IDW) and the angular distance in `radians` from function flatPolar_.
        - pygeodesy.heights.HeightIDWhaversine: Height interpolator using Inverse Distance Weighting (IDW) and the angular distance in `radians` from function haversine_.
          - pygeodesy.deprecated.HeightIDW3: DEPRECATED, use class HeightIDWhaversine.
        - pygeodesy.heights.HeightIDWkarney: Height interpolator using Inverse Distance Weighting (IDW) and the angular distance in `degrees` from Karney's geographiclib Geodesic Inverse method.
        - pygeodesy.heights.HeightIDWthomas: Height interpolator using Inverse Distance Weighting (IDW) and the angular distance in `radians` from function thomas_.
        - pygeodesy.heights.HeightIDWvincentys: Height interpolator using Inverse Distance Weighting (IDW) and the angular distance in `radians` from function vincentys_.
    - pygeodesy.named._NamedBase: (INTERNAL) Base class with name.
      - pygeodesy.css.CassiniSoldner: Cassini-Soldner projection, a Python version of Karney's C++ class CassiniSoldner.
      - pygeodesy.css.Css: Cassini-Soldner East-/Northing location.
      - pygeodesy.ecef.EcefCartesian: Conversion between geodetic `(lat, lon, height)` and local cartesian `(x, y, z)` coordinates with a local cartesian origin at `(lat0, lon0, height0)`, transcribed from Karney's C++ class LocalCartesian.
      - pygeodesy.etm.ExactTransverseMercator: A Python version of Karney's TransverseMercatorExact C++ class, a numerically exact transverse mercator projection, here referred to as `TMExact`.
      - pygeodesy.latlonBase.LatLonBase: (INTERNAL) Base class for `LatLon` points on spherical or ellipsoidal earth models.
        - pygeodesy.ellipsoidalBase.LatLonEllipsoidalBase: (INTERNAL) Base class for ellipsoidal `LatLon`s.
          - pygeodesy.ellipsoidalKarney.LatLon: An ellipsoidal LatLon similar to ellipsoidalVincenty.LatLon but using Charles F. F. Karney's Python geographiclib to compute the geodesic distance, initial and final bearing (azimuths) between two given points or the destination point given a start point and an (initial) bearing.
          - pygeodesy.ellipsoidalNvector.LatLon: An n-vector-based, ellipsoidal LatLon point.
          - pygeodesy.ellipsoidalVincenty.LatLon: Using the formulae devised by Thaddeus Vincenty (1975) for an (oblate) ellipsoidal model of the earth to compute the geodesic distance and bearings between two given points or the destination point given an start point and (initial) bearing.
        - pygeodesy.nvectorBase.LatLonNvectorBase: (INTERNAL) Base class for n-vector-based ellipsoidal and spherical `LatLon` classes.
          - pygeodesy.ellipsoidalNvector.LatLon: An n-vector-based, ellipsoidal LatLon point.
          - pygeodesy.sphericalNvector.LatLon: New n-vector based point on a spherical earth model.
        - pygeodesy.sphericalBase.LatLonSphericalBase: (INTERNAL) Base class for spherical `LatLon`s.
          - pygeodesy.sphericalNvector.LatLon: New n-vector based point on a spherical earth model.
          - pygeodesy.sphericalTrigonometry.LatLon: New point on spherical model earth model.
      - pygeodesy.lcc.Lcc: Lambert conformal conic East-/Northing location.
      - pygeodesy.mgrs.Mgrs: Military Grid Reference System (MGRS/NATO) references, with method to convert to UTM coordinates.
      - pygeodesy.osgr.Osgr: Ordinance Survey Grid References (OSGR) coordinate.
      - pygeodesy.utmupsBase.UtmUpsBase: (INTERNAL) Base class for Utm and Ups coordinates.
        - pygeodesy.ups.Ups: Universal Polar Stereographic (UPS) coordinate.
        - pygeodesy.utm.Utm: Universal Transverse Mercator (UTM) coordinate.
          - pygeodesy.etm.Etm: Exact Transverse Mercator (ETM) coordinate, a sub-class of Utm, a Universal Transverse Mercator (UTM) coordinate using the ExactTransverseMercator projection for highest accuracy.
      - pygeodesy.vector3d.Vector3d: Generic 3-D vector manipulation.
        - pygeodesy.cartesianBase.CartesianBase: (INTERNAL) Base class for ellipsoidal and spherical `Cartesian`.
          - pygeodesy.ellipsoidalBase.CartesianEllipsoidalBase: (INTERNAL) Base class for ellipsoidal `Cartesian`s.
            - pygeodesy.ellipsoidalKarney.Cartesian: Extended to convert `Karney`-based Cartesian to `Karney`-based LatLon points.
            - pygeodesy.ellipsoidalNvector.Cartesian: Extended to convert geocentric, Cartesian points to Nvector and n-vector-based, geodetic LatLon.
            - pygeodesy.ellipsoidalVincenty.Cartesian: Extended to convert geocentric, Cartesian points to Vincenty-based, ellipsoidal, geodetic LatLon.
          - pygeodesy.sphericalBase.CartesianSphericalBase: (INTERNAL) Base class for spherical `Cartesian`s.
            - pygeodesy.sphericalNvector.Cartesian: Extended to convert geocentric, Cartesian points to Nvector and n-vector-based, spherical LatLon.
            - pygeodesy.sphericalTrigonometry.Cartesian: Extended to convert geocentric, Cartesian points to spherical, geodetic LatLon.
        - pygeodesy.nvectorBase.NvectorBase: Base class for ellipsoidal and spherical `Nvector`s.
          - pygeodesy.deprecated.nvector.Nvector: DEPRECATED, use class NvectorBase.
          - pygeodesy.ellipsoidalNvector.Nvector: An n-vector is a position representation using a (unit) vector normal to the earth ellipsoid.
          - pygeodesy.sphericalNvector.Nvector: An n-vector is a position representation using a (unit) vector normal to the earth's surface.
      - pygeodesy.webmercator.Wm: Web Mercator (WM) coordinate.
      - pygeodesy.albers._AlbersBase: (INTERNAL) Base class for `AlbersEqualArea...` projections.
        - pygeodesy.albers.AlbersEqualArea: An Albers equal-area (authalic) projection with a single standard parallel.
        - pygeodesy.albers.AlbersEqualArea2: An Albers equal-area (authalic) projection with two standard parallels.
        - pygeodesy.albers.AlbersEqualArea4: An Albers equal-area (authalic) projection specified by the `sin` and `cos` of both standard parallels.
        - pygeodesy.albers.AlbersEqualAreaCylindrical: An AlbersEqualArea projection at `lat=0` and `k0=1` degenerating to the cylindrical-equal-area projection.
        - pygeodesy.albers.AlbersEqualAreaNorth: An azimuthal AlbersEqualArea projection at `lat=90` and `k0=1` degenerating to the azimuthal LambertEqualArea projection.
        - pygeodesy.albers.AlbersEqualAreaSouth: An azimuthal AlbersEqualArea projection at `lat=-90` and `k0=1` degenerating to the azimuthal LambertEqualArea projection.
      - pygeodesy.azimuthal._AzimuthalBase: (INTERNAL) Base class for azimuthal projections.
        - pygeodesy.azimuthal.Equidistant: Azimuthal equidistant projection for the sphere**, see Snyder, pp 195-197 and MathWorld-Wolfram.
        - pygeodesy.azimuthal.Gnomonic: Azimuthal gnomonic projection for the sphere**, see Snyder, pp 164-168 and MathWorld-Wolfram.
        - pygeodesy.azimuthal.LambertEqualArea: Lambert-equal-area projection for the sphere** (aka Lambert zenithal equal-area projection, see Snyder, pp 185-187 and MathWorld-Wolfram.
        - pygeodesy.azimuthal.Orthographic: Orthographic projection for the sphere**, see Snyder, pp 148-153 and MathWorld-Wolfram.
        - pygeodesy.azimuthal.Stereographic: Stereographic projection for the sphere**, see Snyder, pp 157-160 and MathWorld-Wolfram.
        - pygeodesy.azimuthal._AzimuthalBaseKarney: (INTERNAL) Base class for azimuthal projections using Karney Geodesic.
          - pygeodesy.azimuthal.EquidistantKarney: Azimuthal equidistant projection, a Python version of Karney's C++ class AzimuthalEquidistant, requiring package geographiclib to be installed.
          - pygeodesy.azimuthal.GnomonicKarney: Azimuthal gnomonic projection, a Python version of Karney's C++ class Gnomonic, requiring package geographiclib to be installed.
      - pygeodesy.ecef._EcefBase: (INTERNAL) Base class for EcefKarney, EcefVeness and EcefYou.
        - pygeodesy.ecef.EcefKarney: Conversion between geodetic and geocentric, aka Earth-Centered, Earth-Fixed (ECEF) coordinates based on Karney's Geocentric methods.
        - pygeodesy.ecef.EcefVeness: Conversion between geodetic and geocentric, aka Earth-Centered, Earth-Fixed (ECEF) coordinates transcribed from Chris Veness' JavaScript classes LatLonEllipsoidal, Cartesian.
          - pygeodesy.ecef.EcefSudano: Conversion between geodetic and geocentric, aka Earth-Centered, Earth-Fixed (ECEF) coordinates based on John J. Sudano's paper.
        - pygeodesy.ecef.EcefYou: Conversion between geodetic and geocentric, aka Earth-Centered, Earth-Fixed (ECEF) coordinates using Rey-Jer You's transformations.
      - pygeodesy.named._NamedEnumItem: (INTERNAL) Base class for items in a `_NamedEnum` registery.
        - pygeodesy.lcc.Conic: Lambert conformal conic projection (1- or 2-SP).
        - pygeodesy.datums.Datum: Ellipsoid and transform parameters for an earth model.
        - pygeodesy.ellipsoids.Ellipsoid: Ellipsoid with equatorial and polar radius, flattening, inverse flattening and other, often used, cached attributes, supporting spherical and oblate and prolate ellipsoidal models.
          - pygeodesy.ellipsoids.Ellipsoid2: An Ellipsoid specified by equatorial radius and flattening.
        - pygeodesy.trf.RefFrame: Terrestrial Reference Frame (TRF) parameters.
        - pygeodesy.datums.Transform: Helmert transformation.
    - pygeodesy.named._NamedDict: (INTERNAL) Named `dict` with key and attribute access to the items.
      - pygeodesy.geohash.Neighbors8Dict: 8-Dict `(N, NE, E, SE, S, SW, W, NW)` of Geohashes, providing key and attribute access to the items.
      - pygeodesy.named._NamedEnum: (INTERNAL) Enum-like `_NamedDict` with attribute access restricted to valid keys.
    - pygeodesy.named._NamedTuple: (INTERNAL) Base for named `tuple`s with both index and attribute name access to the items.
      - pygeodesy.albers.Albers7Tuple: 7-Tuple `(x, y, lat, lon, gamma, scale, datum)`, in `meter`, `meter`, `degrees90`, `degrees180`, `degrees360`, `scalar` and `Datum` where `(x, y)` is the projected, `(lat, lon)` the geodetic location, `gamma` the meridian convergence at point, the bearing of the y-axis measured clockwise from true North and `scale` is the azimuthal scale of the projection at point.
      - pygeodesy.azimuthal.Azimuthal7Tuple: 7-Tuple `(x, y, lat, lon, azimuth, scale, datum)`, in `meter`, `meter`, `degrees90`, `degrees180`, `degrees360`, `float` and `Datum` where `(x, y)` is the projected, `(lat, lon)` the geodetic location, `azimuth` the azimuth direction clockwise from true North and `scale` is the projection scale, either (`1 / reciprocal` or `1` or `-1` in the Equidistant case).
      - pygeodesy.namedTuples.Bearing2Tuple: 2-Tuple `(initial, final)` bearings, both in compass `degrees360`.
      - pygeodesy.namedTuples.Bounds2Tuple: 2-Tuple `(latlonSW, latlonNE)` with the bounds' lower-left and upper-right corner as `LatLon` instance.
      - pygeodesy.namedTuples.Bounds4Tuple: 4-Tuple `(latS, lonW, latN, lonE)` with the bounds' lower-left `(LatS, LowW)` and upper-right `(latN, lonE)` corner lat- and longitudes.
      - pygeodesy.ellipsoids.Circle4Tuple: 4-Tuple `(radius, height, lat, beta)` of the `radius` and `height`, both conventionally in `meter` of a parallel circle of latitude at (geodetic) latitude `lat` and the parametric (or reduced) auxiliary latitude `beta`, both in `degrees90`.
      - pygeodesy.deprecated.ClipCS3Tuple: 3-Tuple `(start, end, index)` DEPRECATED, see function clipCS3.
      - pygeodesy.clipy.ClipCS4Tuple: 4-Tuple `(start, end, i, j)` for each edge of a clipped path with the `start` and `end` points (`LatLon`) of the portion of the edge inside or on the clip box and the indices `i` and `j` (`int`) of the edge start and end points in the original path.
      - pygeodesy.clipy.ClipLB6Tuple: 6-Tuple `(start, end, i, fi, fj, j)` for each edge of the clipped path with the `start` and `end` points (`LatLon`) of the portion of the edge inside or on the clip box, indices `i` and `j` (`int`) of the original path edge start and end points and fractional indices `fi` and `fj` (FIx) of the `start` and `end` points along the edge of the original path.
      - pygeodesy.clipy.ClipSH3Tuple: 3-Tuple `(start, end, original)` for each edge of a clipped polygon, the `start` and `end` points (`LatLon`) of the portion of the edge inside or on the clip region and `original` indicates whether the edge is part of the original polygon or part of the clip region (`bool`).
      - pygeodesy.ellipsoids.Curvature2Tuple: 2-Tuple `(meridional, prime_vertical)` of radii of curvature, both in `meter`, conventionally.
      - pygeodesy.namedTuples.Destination2Tuple: 2-Tuple `(destination, final)`, `destination` in `LatLon` and `final` bearing in compass `degrees360`.
      - pygeodesy.namedTuples.Destination3Tuple: 3-Tuple `(lat, lon, final)`, destination `lat`, `lon` in `degrees90` respectively `degrees180` and `final` bearing in compass `degrees360`.
      - pygeodesy.namedTuples.Distance2Tuple: 2-Tuple `(distance, initial)`, `distance` in `meter` and `initial` bearing in compass `degrees360`.
      - pygeodesy.namedTuples.Distance3Tuple: 3-Tuple `(distance, initial, final)`, `distance` in `meter` and `initial` and `final` bearing, both in compass `degrees360`.
      - pygeodesy.namedTuples.Distance4Tuple: 4-Tuple `(distance2, delta_lat, delta_lon, unroll_lon2)` with the distance in `degrees squared`, the latitudinal `delta_lat = lat2 - lat1`, the wrapped, unrolled and adjusted longitudinal `delta_lon = lon2 - lon1` and `unroll_lon2`, the unrolled or original `lon2`.
      - pygeodesy.namedTuples.EasNor2Tuple: 2-Tuple `(easting, northing)`, both in `meter`, conventionally.
      - pygeodesy.namedTuples.EasNor3Tuple: 3-Tuple `(easting, northing, height)`, all in `meter`, conventionally.
      - pygeodesy.css.EasNorAziRk4Tuple: 4-Tuple `(easting, northing, azimuth, reciprocal)` for the Cassini-Soldner location with `easting` and `northing` in `meters` and the `azimuth` of easting direction and `reciprocal` of azimuthal northing scale, both in `degrees`.
      - pygeodesy.etm.EasNorExact4Tuple: 4-Tuple `(easting, northing, convergence, scale)` in `meter`, `meter`, `degrees` and `scalar`.
      - pygeodesy.webmercator.EasNorRadius3Tuple: 3-Tuple `(easting, northing, radius)`, all in `meter`.
      - pygeodesy.ecef.Ecef9Tuple: 9-Tuple `(x, y, z, lat, lon, height, C, M, datum)` with geocentric coordinates `x`, `y` and `z`, geodetic coordinates `lat`, `lon` and `height`, case `C` (see the `Ecef*.reverse` methods) and optionally, the EcefMatrix `M` and `datum`, with `lat` and `lon` in `degrees` and `x`, `y`, `z` and `height` in `meter`, conventionally.
      - pygeodesy.ecef.EcefMatrix: A rotation matrix.
      - pygeodesy.elevations.Elevation2Tuple: 2-Tuple `(elevation, data_source)` in `meter` and `str`.
      - pygeodesy.elliptic.Elliptic3Tuple: 3-Tuple `(sn, cn, dn)` all `scalar`.
      - pygeodesy.frechet.Frechet6Tuple: 6-Tuple `(fd, fi1, fi2, r, n, units)` with the discrete Fréchet distance `fd`, fractional indices `fi1` and `fi2` as `FIx`, the recursion depth `r`, the number of distances computed `n` and the units class or class or name of the distance `units`.
      - pygeodesy.elevations.GeoidHeight2Tuple: 2-Tuple `(height, model_name)`, geoid `height` in `meter` and `model_name` as `str`.
      - pygeodesy.geoids.GeoidHeight5Tuple: 5-Tuple `(lat, lon, egm84, egm96, egm2008)` for GeoidHeights.dat tests with the heights for 3 different EGM grids with `degrees90` and `degrees180` degrees (after converting `lon` from the original `0.0 <= EasterLon <= 360.0`).
      - pygeodesy.hausdorff.Hausdorff6Tuple: 6-Tuple `(hd, i, j, mn, md, units)` with the Hausdorff distance `hd`, indices `i` and `j`, the total count `mn`, the `mean Hausdorff` distance `md` and the class or name of both distance `units`.
      - pygeodesy.namedTuples.LatLon2Tuple: 2-Tuple `(lat, lon)` in `degrees90` and `degrees180`.
      - pygeodesy.namedTuples.LatLon3Tuple: 3-Tuple `(lat, lon, height)` in `degrees90`, `degrees180` and `meter`, conventionally.
      - pygeodesy.namedTuples.LatLon4Tuple: 4-Tuple `(lat, lon, height, datum)` in `degrees90`, `degrees180`, `meter` and Datum.
      - pygeodesy.css.LatLonAziRk4Tuple: 4-Tuple `(lat, lon, azimuth, reciprocal)`, all in `degrees` where `azimuth` is the azimuth of easting direction and `reciprocal` the reciprocal of azimuthal northing scale.
      - pygeodesy.namedTuples.LatLonDatum3Tuple: 3-Tuple `(lat, lon, datum)` in `degrees90`, `degrees180` and Datum.
      - pygeodesy.namedTuples.LatLonDatum5Tuple: 5-Tuple `(lat, lon, datum, convergence, scale)` in `degrees90`, `degrees180`, Datum, `degrees` and `float`.
      - pygeodesy.etm.LatLonExact4Tuple: 4-Tuple `(lat, lon, convergence, scale)` in `degrees180`, `degrees180`, `degrees` and `scalar`.
      - pygeodesy.namedTuples.LatLonPrec3Tuple: 3-Tuple `(lat, lon, precision)` in `degrees`, `degrees` and `int`.
      - pygeodesy.namedTuples.LatLonPrec5Tuple: 5-Tuple `(lat, lon, precision, height, radius)` in `degrees`, `degrees`, `int` and `height` or `radius` in `meter` (or `None` if missing).
      - pygeodesy.mgrs.Mgrs4Tuple: 4-Tuple `(zone, digraph, easting, northing)`, `zone` and `digraph` as `str`, `easting` and `northing` in `meter`.
      - pygeodesy.mgrs.Mgrs6Tuple: 6-Tuple `(zone, digraph, easting, northing, band, datum)`, `zone`, `digraph` and `band` as `str`, `easting` and `northing` in `meter` and `datum` a Datum.
      - pygeodesy.namedTuples.NearestOn3Tuple: 3-Tuple `(closest, distance, angle)` of the `closest` point on the polygon, either a `LatLon` instance or a LatLon3Tuple`(lat, lon, height)` and the `distance` and `angle` to the `closest` point are in `meter` respectively compass `degrees360`.
      - pygeodesy.points.NearestOn5Tuple: 5-Tuple `(lat, lon, distance, angle, height)` all in `degrees`, except `height`.
      - pygeodesy.ellipsoidalNvector.Ned3Tuple: 3-Tuple `(north, east, down)`, all in `degrees`.
      - pygeodesy.namedTuples.PhiLam2Tuple: 2-Tuple `(phi, lam)` with latitude `phi` in `radians[PI_2]` and longitude `lam` in `radians[PI]`.
      - pygeodesy.namedTuples.PhiLam3Tuple: 3-Tuple `(phi, lam, height)` with latitude `phi` in `radians[PI_2]`, longitude `lam` in `radians[PI]` and `height` in `meter`.
      - pygeodesy.namedTuples.PhiLam4Tuple: 4-Tuple `(phi, lam, height, datum)` with latitude `phi` in `radians[PI_2]`, longitude `lam` in `radians[PI]`, `height` in `meter` and Datum.
      - pygeodesy.points.Point3Tuple: 3-Tuple `(x, y, ll)` in `meter`, `meter` and `LatLon`.
      - pygeodesy.namedTuples.Points2Tuple: 2-Tuple `(number, points)` with the `number` of points and -possible reduced- `list` or `tuple` of `points`.
      - pygeodesy.formy.Radical2Tuple: 2-Tuple `(ratio, xline)` of the radical `ratio` and radical `xline`, both `scalar` and `0.0 <= ratio <= 1.0`
      - pygeodesy.geohash.Resolutions2Tuple: 2-Tuple `(res1, res2)` with the primary (longitudinal) and secondary (latitudinal) resolution, both in `degrees`.
      - pygeodesy.points.Shape2Tuple: 2-Tuple `(nrows, ncols)`, the number of rows and columns, both `int`.
      - pygeodesy.namedTuples.Trilaterate5Tuple: 5-Tuple `(min, minPoint, max, maxPoint, n)` with `min` and `max` in `meter`, the corresponding trilaterated `minPoint` and `maxPoint` as `LatLon` and the number `n`.
      - pygeodesy.namedTuples.UtmUps2Tuple: 2-Tuple `(zone, hemipole)` as `int` and `str`, where `zone` is `1..60` for UTM or `0` for UPS and `hemipole` `'N'|'S'` is the UTM hemisphere or the UPS pole.
      - pygeodesy.deprecated.UtmUps4Tuple: OBSOLETE, expect a UtmUps5Tuple from method `Mgrs.toUtm(utm=None)`.
      - pygeodesy.namedTuples.UtmUps5Tuple: 5-Tuple `(zone, hemipole, easting, northing, band)` as `int`, `str`, `meter`, `meter` and `band` letter, where `zone` is `1..60` for UTM or `0` for UPS, `hemipole` `'N'|'S'` is the UTM hemisphere or the UPS pole and `band` is `""` or the (longitudinal) UTM band `'C'|'D'..'W'|'X'` or the (polar) UPS band `'A'|'B'|'Y'|'Z'`.
      - pygeodesy.namedTuples.UtmUps8Tuple: 8-Tuple `(zone, hemipole, easting, northing, band, datum, convergence, scale)` as `int`, `str`, `meter`, `meter`, `band` letter, `Datum`, `degrees` and `scalar`, where `zone` is `1..60` for UTM or `0` for UPS, `hemipole` `'N'|'S'` is the UTM hemisphere or the UPS pole and `band` is `""` or the (longitudinal) UTM band `'C'|'D'..'W'|'X'` or the (polar) UPS band `'A'|'B'|'Y'|'Z'`.
      - pygeodesy.namedTuples.UtmUpsLatLon5Tuple: 5-Tuple `(zone, band, hemipole, lat, lon)` as `int`, `str`, `str`, `degrees90` and `degrees180`, where `zone` is `1..60` for UTM or `0` for UPS, `band` is `""` or the (longitudinal) UTM band `'C'|'D'..'W'|'X'` or (polar) UPS band `'A'|'B'|'Y'|'Z'` and `hemipole` `'N'|'S'` is the UTM hemisphere or the UPS pole.
      - pygeodesy.namedTuples.Vector3Tuple: 3-Tuple `(x, y, z)` of (geocentric) components, all in `meter` or `units`.
      - pygeodesy.namedTuples.Vector4Tuple: 4-Tuple `(x, y, z, h)` of (geocentric) components, all in `meter` or `units`.
      - pygeodesy.ellipsoids.a_f2Tuple: 2-Tuple `(a, f)` specifying an ellipsoid by equatorial radius `a` in `meter` and scalar flattening `f`.
    - pygeodesy.units._NamedUnit: (INTERNAL) Base class for `units`.
      - pygeodesy.units.Bool: Named `bool`, a sub-class of `int` like Python's `bool`.
      - pygeodesy.units.Float: Named `float`.
        - pygeodesy.units.Degrees: Named `float` representing a coordinate in `degrees`, optionally clipped.
          - pygeodesy.units.Bearing: Named `float` representing a bearing in compass `degrees` from (true) North.
          - pygeodesy.units.Degrees_: Named `Degrees` representing a coordinate in `degrees` with optional limits `low` and `high`.
            - pygeodesy.units.Lat_: Named `float` representing a latitude in `degrees` within limits `low` and `high`.
            - pygeodesy.units.Lon_: Named `float` representing a longitude in `degrees` within limits `low` and `high`.
          - pygeodesy.units.Lat: Named `float` representing a latitude in `degrees`.
          - pygeodesy.units.Lon: Named `float` representing a longitude in `degrees`.
        - pygeodesy.units.Degrees2: Named `float` representing a distance in `degrees squared`.
        - pygeodesy.units.Distance: Named `float` representing a distance, conventionally in `meter`.
        - pygeodesy.units.Easting: Named `float` representing an easting, conventionally in `meter`.
        - pygeodesy.units.Feet: Named `float` representing a distance or length in `feet`.
        - pygeodesy.units.Float_: Named `float` with optional `low` and `high` limit.
          - pygeodesy.units.Distance_: Named `float` with optional `low` and `high` limits representing a distance, conventionally in `meter`.
          - pygeodesy.units.Epoch: Named `epoch` with optional `low` and `high` limits representing a fractional calendar year.
          - pygeodesy.units.FIx: A named Fractional Index, an `int` or `float` index into a `list` or `tuple` of `points`, typically.
          - pygeodesy.units.Meter2: Named `float` representing an area in `meter squared`.
          - pygeodesy.units.Meter3: Named `float` representing a volume in `meter cubed`.
          - pygeodesy.units.Radians2: Named `float` representing a distance in `radians squared`.
          - pygeodesy.units.Radius_: Named `float` with optional `low` and `high` limits representing a radius, conventionally in `meter`.
          - pygeodesy.units.Scalar_: Named `float` with optional `low` and `high` limits representing a factor, fraction, scale, etc.
        - pygeodesy.units.Height: Named `float` representing a height, conventionally in `meter`.
        - pygeodesy.units.Meter: Named `float` representing a distance or length in `meter`.
        - pygeodesy.units.Northing: Named `float` representing a northing, conventionally in `meter`.
        - pygeodesy.units.Radians: Named `float` representing a coordinate in `radians`, optionally clipped.
          - pygeodesy.units.Bearing_: Named `float` representing a bearing in `radians` from compass `degrees` from (true) North.
          - pygeodesy.units.Lam: Named `float` representing a longitude in `radians`.
            - pygeodesy.units.Lam_: Named `float` representing a longitude in `radians` converted from `degrees`.
          - pygeodesy.units.Phi: Named `float` representing a latitude in `radians`.
            - pygeodesy.units.Phi_: Named `float` representing a latitude in `radians` converted from `degrees`.
        - pygeodesy.units.Radius: Named `float` representing a radius, conventionally in `meter`.
        - pygeodesy.units.Scalar: Named `float` representing a factor, fraction, scale, etc.
      - pygeodesy.units.Int: Named `int`.
        - pygeodesy.units.Bool: Named `bool`, a sub-class of `int` like Python's `bool`.
        - pygeodesy.epsg.Epsg: EPSG class, a named `int`.
        - pygeodesy.units.Int_: Named `int` with optional limits `low` and `high`.
          - pygeodesy.units.Number_: Named `int` representing a non-negative number.
          - pygeodesy.units.Precision_: Named `int` with optional `low` and `high` limits representing a precision.
        - pygeodesy.units.Zone: Named `int` representing a UTM/UPS zone number.
      - pygeodesy.units.Str: Named `str`.
        - pygeodesy.units.Band: Named `str` representing a UTM/UPS band letter, unchecked.
        - pygeodesy.gars.Garef: Garef class, a named `str`.
        - pygeodesy.geohash.Geohash: Geohash class, a named `str`.
        - pygeodesy.wgrs.Georef: Georef class, a named `str`.
  - basestring: Type basestring cannot be instantiated; it is the base for str and unicode.
    - str: str(object='') -> string
      - pygeodesy.units.Str: Named `str`.
        - pygeodesy.units.Band: Named `str` representing a UTM/UPS band letter, unchecked.
        - pygeodesy.gars.Garef: Garef class, a named `str`.
        - pygeodesy.geohash.Geohash: Geohash class, a named `str`.
        - pygeodesy.wgrs.Georef: Georef class, a named `str`.
  - dict: dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object's (key, value) pairs dict(iterable) -> new dictionary initialized as if via: d = {} for k, v in iterable: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list.
    - pygeodesy.named._NamedDict: (INTERNAL) Named `dict` with key and attribute access to the items.
      - pygeodesy.geohash.Neighbors8Dict: 8-Dict `(N, NE, E, SE, S, SW, W, NW)` of Geohashes, providing key and attribute access to the items.
      - pygeodesy.named._NamedEnum: (INTERNAL) Enum-like `_NamedDict` with attribute access restricted to valid keys.
  - float: float(x) -> floating point number
    - pygeodesy.units.Float: Named `float`.
      - pygeodesy.units.Degrees: Named `float` representing a coordinate in `degrees`, optionally clipped.
        - pygeodesy.units.Bearing: Named `float` representing a bearing in compass `degrees` from (true) North.
        - pygeodesy.units.Degrees_: Named `Degrees` representing a coordinate in `degrees` with optional limits `low` and `high`.
          - pygeodesy.units.Lat_: Named `float` representing a latitude in `degrees` within limits `low` and `high`.
          - pygeodesy.units.Lon_: Named `float` representing a longitude in `degrees` within limits `low` and `high`.
        - pygeodesy.units.Lat: Named `float` representing a latitude in `degrees`.
        - pygeodesy.units.Lon: Named `float` representing a longitude in `degrees`.
      - pygeodesy.units.Degrees2: Named `float` representing a distance in `degrees squared`.
      - pygeodesy.units.Distance: Named `float` representing a distance, conventionally in `meter`.
      - pygeodesy.units.Easting: Named `float` representing an easting, conventionally in `meter`.
      - pygeodesy.units.Feet: Named `float` representing a distance or length in `feet`.
      - pygeodesy.units.Float_: Named `float` with optional `low` and `high` limit.
        - pygeodesy.units.Distance_: Named `float` with optional `low` and `high` limits representing a distance, conventionally in `meter`.
        - pygeodesy.units.Epoch: Named `epoch` with optional `low` and `high` limits representing a fractional calendar year.
        - pygeodesy.units.FIx: A named Fractional Index, an `int` or `float` index into a `list` or `tuple` of `points`, typically.
        - pygeodesy.units.Meter2: Named `float` representing an area in `meter squared`.
        - pygeodesy.units.Meter3: Named `float` representing a volume in `meter cubed`.
        - pygeodesy.units.Radians2: Named `float` representing a distance in `radians squared`.
        - pygeodesy.units.Radius_: Named `float` with optional `low` and `high` limits representing a radius, conventionally in `meter`.
        - pygeodesy.units.Scalar_: Named `float` with optional `low` and `high` limits representing a factor, fraction, scale, etc.
      - pygeodesy.units.Height: Named `float` representing a height, conventionally in `meter`.
      - pygeodesy.units.Meter: Named `float` representing a distance or length in `meter`.
      - pygeodesy.units.Northing: Named `float` representing a northing, conventionally in `meter`.
      - pygeodesy.units.Radians: Named `float` representing a coordinate in `radians`, optionally clipped.
        - pygeodesy.units.Bearing_: Named `float` representing a bearing in `radians` from compass `degrees` from (true) North.
        - pygeodesy.units.Lam: Named `float` representing a longitude in `radians`.
          - pygeodesy.units.Lam_: Named `float` representing a longitude in `radians` converted from `degrees`.
        - pygeodesy.units.Phi: Named `float` representing a latitude in `radians`.
          - pygeodesy.units.Phi_: Named `float` representing a latitude in `radians` converted from `degrees`.
      - pygeodesy.units.Radius: Named `float` representing a radius, conventionally in `meter`.
      - pygeodesy.units.Scalar: Named `float` representing a factor, fraction, scale, etc.
  - int: int(x=0) -> int or long int(x, base=10) -> int or long
    - pygeodesy.units.Int: Named `int`.
      - pygeodesy.units.Bool: Named `bool`, a sub-class of `int` like Python's `bool`.
      - pygeodesy.epsg.Epsg: EPSG class, a named `int`.
      - pygeodesy.units.Int_: Named `int` with optional limits `low` and `high`.
        - pygeodesy.units.Number_: Named `int` representing a non-negative number.
        - pygeodesy.units.Precision_: Named `int` with optional `low` and `high` limits representing a precision.
      - pygeodesy.units.Zone: Named `int` representing a UTM/UPS zone number.
  - property: property(fget=None, fset=None, fdel=None, doc=None) -> property attribute
    - pygeodesy.props._PropertyBase: (INTERNAL) Base class for `P/property/_RO`.
      - pygeodesy.props.Property_RO
        - pygeodesy.props.Property
      - pygeodesy.props.property_RO
  - tuple: tuple() -> empty tuple tuple(iterable) -> tuple initialized from iterable's items
    - pygeodesy.named._NamedTuple: (INTERNAL) Base for named `tuple`s with both index and attribute name access to the items.
      - pygeodesy.albers.Albers7Tuple: 7-Tuple `(x, y, lat, lon, gamma, scale, datum)`, in `meter`, `meter`, `degrees90`, `degrees180`, `degrees360`, `scalar` and `Datum` where `(x, y)` is the projected, `(lat, lon)` the geodetic location, `gamma` the meridian convergence at point, the bearing of the y-axis measured clockwise from true North and `scale` is the azimuthal scale of the projection at point.
      - pygeodesy.azimuthal.Azimuthal7Tuple: 7-Tuple `(x, y, lat, lon, azimuth, scale, datum)`, in `meter`, `meter`, `degrees90`, `degrees180`, `degrees360`, `float` and `Datum` where `(x, y)` is the projected, `(lat, lon)` the geodetic location, `azimuth` the azimuth direction clockwise from true North and `scale` is the projection scale, either (`1 / reciprocal` or `1` or `-1` in the Equidistant case).
      - pygeodesy.namedTuples.Bearing2Tuple: 2-Tuple `(initial, final)` bearings, both in compass `degrees360`.
      - pygeodesy.namedTuples.Bounds2Tuple: 2-Tuple `(latlonSW, latlonNE)` with the bounds' lower-left and upper-right corner as `LatLon` instance.
      - pygeodesy.namedTuples.Bounds4Tuple: 4-Tuple `(latS, lonW, latN, lonE)` with the bounds' lower-left `(LatS, LowW)` and upper-right `(latN, lonE)` corner lat- and longitudes.
      - pygeodesy.ellipsoids.Circle4Tuple: 4-Tuple `(radius, height, lat, beta)` of the `radius` and `height`, both conventionally in `meter` of a parallel circle of latitude at (geodetic) latitude `lat` and the parametric (or reduced) auxiliary latitude `beta`, both in `degrees90`.
      - pygeodesy.deprecated.ClipCS3Tuple: 3-Tuple `(start, end, index)` DEPRECATED, see function clipCS3.
      - pygeodesy.clipy.ClipCS4Tuple: 4-Tuple `(start, end, i, j)` for each edge of a clipped path with the `start` and `end` points (`LatLon`) of the portion of the edge inside or on the clip box and the indices `i` and `j` (`int`) of the edge start and end points in the original path.
      - pygeodesy.clipy.ClipLB6Tuple: 6-Tuple `(start, end, i, fi, fj, j)` for each edge of the clipped path with the `start` and `end` points (`LatLon`) of the portion of the edge inside or on the clip box, indices `i` and `j` (`int`) of the original path edge start and end points and fractional indices `fi` and `fj` (FIx) of the `start` and `end` points along the edge of the original path.
      - pygeodesy.clipy.ClipSH3Tuple: 3-Tuple `(start, end, original)` for each edge of a clipped polygon, the `start` and `end` points (`LatLon`) of the portion of the edge inside or on the clip region and `original` indicates whether the edge is part of the original polygon or part of the clip region (`bool`).
      - pygeodesy.ellipsoids.Curvature2Tuple: 2-Tuple `(meridional, prime_vertical)` of radii of curvature, both in `meter`, conventionally.
      - pygeodesy.namedTuples.Destination2Tuple: 2-Tuple `(destination, final)`, `destination` in `LatLon` and `final` bearing in compass `degrees360`.
      - pygeodesy.namedTuples.Destination3Tuple: 3-Tuple `(lat, lon, final)`, destination `lat`, `lon` in `degrees90` respectively `degrees180` and `final` bearing in compass `degrees360`.
      - pygeodesy.namedTuples.Distance2Tuple: 2-Tuple `(distance, initial)`, `distance` in `meter` and `initial` bearing in compass `degrees360`.
      - pygeodesy.namedTuples.Distance3Tuple: 3-Tuple `(distance, initial, final)`, `distance` in `meter` and `initial` and `final` bearing, both in compass `degrees360`.
      - pygeodesy.namedTuples.Distance4Tuple: 4-Tuple `(distance2, delta_lat, delta_lon, unroll_lon2)` with the distance in `degrees squared`, the latitudinal `delta_lat = lat2 - lat1`, the wrapped, unrolled and adjusted longitudinal `delta_lon = lon2 - lon1` and `unroll_lon2`, the unrolled or original `lon2`.
      - pygeodesy.namedTuples.EasNor2Tuple: 2-Tuple `(easting, northing)`, both in `meter`, conventionally.
      - pygeodesy.namedTuples.EasNor3Tuple: 3-Tuple `(easting, northing, height)`, all in `meter`, conventionally.
      - pygeodesy.css.EasNorAziRk4Tuple: 4-Tuple `(easting, northing, azimuth, reciprocal)` for the Cassini-Soldner location with `easting` and `northing` in `meters` and the `azimuth` of easting direction and `reciprocal` of azimuthal northing scale, both in `degrees`.
      - pygeodesy.etm.EasNorExact4Tuple: 4-Tuple `(easting, northing, convergence, scale)` in `meter`, `meter`, `degrees` and `scalar`.
      - pygeodesy.webmercator.EasNorRadius3Tuple: 3-Tuple `(easting, northing, radius)`, all in `meter`.
      - pygeodesy.ecef.Ecef9Tuple: 9-Tuple `(x, y, z, lat, lon, height, C, M, datum)` with geocentric coordinates `x`, `y` and `z`, geodetic coordinates `lat`, `lon` and `height`, case `C` (see the `Ecef*.reverse` methods) and optionally, the EcefMatrix `M` and `datum`, with `lat` and `lon` in `degrees` and `x`, `y`, `z` and `height` in `meter`, conventionally.
      - pygeodesy.ecef.EcefMatrix: A rotation matrix.
      - pygeodesy.elevations.Elevation2Tuple: 2-Tuple `(elevation, data_source)` in `meter` and `str`.
      - pygeodesy.elliptic.Elliptic3Tuple: 3-Tuple `(sn, cn, dn)` all `scalar`.
      - pygeodesy.frechet.Frechet6Tuple: 6-Tuple `(fd, fi1, fi2, r, n, units)` with the discrete Fréchet distance `fd`, fractional indices `fi1` and `fi2` as `FIx`, the recursion depth `r`, the number of distances computed `n` and the units class or class or name of the distance `units`.
      - pygeodesy.elevations.GeoidHeight2Tuple: 2-Tuple `(height, model_name)`, geoid `height` in `meter` and `model_name` as `str`.
      - pygeodesy.geoids.GeoidHeight5Tuple: 5-Tuple `(lat, lon, egm84, egm96, egm2008)` for GeoidHeights.dat tests with the heights for 3 different EGM grids with `degrees90` and `degrees180` degrees (after converting `lon` from the original `0.0 <= EasterLon <= 360.0`).
      - pygeodesy.hausdorff.Hausdorff6Tuple: 6-Tuple `(hd, i, j, mn, md, units)` with the Hausdorff distance `hd`, indices `i` and `j`, the total count `mn`, the `mean Hausdorff` distance `md` and the class or name of both distance `units`.
      - pygeodesy.namedTuples.LatLon2Tuple: 2-Tuple `(lat, lon)` in `degrees90` and `degrees180`.
      - pygeodesy.namedTuples.LatLon3Tuple: 3-Tuple `(lat, lon, height)` in `degrees90`, `degrees180` and `meter`, conventionally.
      - pygeodesy.namedTuples.LatLon4Tuple: 4-Tuple `(lat, lon, height, datum)` in `degrees90`, `degrees180`, `meter` and Datum.
      - pygeodesy.css.LatLonAziRk4Tuple: 4-Tuple `(lat, lon, azimuth, reciprocal)`, all in `degrees` where `azimuth` is the azimuth of easting direction and `reciprocal` the reciprocal of azimuthal northing scale.
      - pygeodesy.namedTuples.LatLonDatum3Tuple: 3-Tuple `(lat, lon, datum)` in `degrees90`, `degrees180` and Datum.
      - pygeodesy.namedTuples.LatLonDatum5Tuple: 5-Tuple `(lat, lon, datum, convergence, scale)` in `degrees90`, `degrees180`, Datum, `degrees` and `float`.
      - pygeodesy.etm.LatLonExact4Tuple: 4-Tuple `(lat, lon, convergence, scale)` in `degrees180`, `degrees180`, `degrees` and `scalar`.
      - pygeodesy.namedTuples.LatLonPrec3Tuple: 3-Tuple `(lat, lon, precision)` in `degrees`, `degrees` and `int`.
      - pygeodesy.namedTuples.LatLonPrec5Tuple: 5-Tuple `(lat, lon, precision, height, radius)` in `degrees`, `degrees`, `int` and `height` or `radius` in `meter` (or `None` if missing).
      - pygeodesy.mgrs.Mgrs4Tuple: 4-Tuple `(zone, digraph, easting, northing)`, `zone` and `digraph` as `str`, `easting` and `northing` in `meter`.
      - pygeodesy.mgrs.Mgrs6Tuple: 6-Tuple `(zone, digraph, easting, northing, band, datum)`, `zone`, `digraph` and `band` as `str`, `easting` and `northing` in `meter` and `datum` a Datum.
      - pygeodesy.namedTuples.NearestOn3Tuple: 3-Tuple `(closest, distance, angle)` of the `closest` point on the polygon, either a `LatLon` instance or a LatLon3Tuple`(lat, lon, height)` and the `distance` and `angle` to the `closest` point are in `meter` respectively compass `degrees360`.
      - pygeodesy.points.NearestOn5Tuple: 5-Tuple `(lat, lon, distance, angle, height)` all in `degrees`, except `height`.
      - pygeodesy.ellipsoidalNvector.Ned3Tuple: 3-Tuple `(north, east, down)`, all in `degrees`.
      - pygeodesy.namedTuples.PhiLam2Tuple: 2-Tuple `(phi, lam)` with latitude `phi` in `radians[PI_2]` and longitude `lam` in `radians[PI]`.
      - pygeodesy.namedTuples.PhiLam3Tuple: 3-Tuple `(phi, lam, height)` with latitude `phi` in `radians[PI_2]`, longitude `lam` in `radians[PI]` and `height` in `meter`.
      - pygeodesy.namedTuples.PhiLam4Tuple: 4-Tuple `(phi, lam, height, datum)` with latitude `phi` in `radians[PI_2]`, longitude `lam` in `radians[PI]`, `height` in `meter` and Datum.
      - pygeodesy.points.Point3Tuple: 3-Tuple `(x, y, ll)` in `meter`, `meter` and `LatLon`.
      - pygeodesy.namedTuples.Points2Tuple: 2-Tuple `(number, points)` with the `number` of points and -possible reduced- `list` or `tuple` of `points`.
      - pygeodesy.formy.Radical2Tuple: 2-Tuple `(ratio, xline)` of the radical `ratio` and radical `xline`, both `scalar` and `0.0 <= ratio <= 1.0`
      - pygeodesy.geohash.Resolutions2Tuple: 2-Tuple `(res1, res2)` with the primary (longitudinal) and secondary (latitudinal) resolution, both in `degrees`.
      - pygeodesy.points.Shape2Tuple: 2-Tuple `(nrows, ncols)`, the number of rows and columns, both `int`.
      - pygeodesy.namedTuples.Trilaterate5Tuple: 5-Tuple `(min, minPoint, max, maxPoint, n)` with `min` and `max` in `meter`, the corresponding trilaterated `minPoint` and `maxPoint` as `LatLon` and the number `n`.
      - pygeodesy.namedTuples.UtmUps2Tuple: 2-Tuple `(zone, hemipole)` as `int` and `str`, where `zone` is `1..60` for UTM or `0` for UPS and `hemipole` `'N'|'S'` is the UTM hemisphere or the UPS pole.
      - pygeodesy.deprecated.UtmUps4Tuple: OBSOLETE, expect a UtmUps5Tuple from method `Mgrs.toUtm(utm=None)`.
      - pygeodesy.namedTuples.UtmUps5Tuple: 5-Tuple `(zone, hemipole, easting, northing, band)` as `int`, `str`, `meter`, `meter` and `band` letter, where `zone` is `1..60` for UTM or `0` for UPS, `hemipole` `'N'|'S'` is the UTM hemisphere or the UPS pole and `band` is `""` or the (longitudinal) UTM band `'C'|'D'..'W'|'X'` or the (polar) UPS band `'A'|'B'|'Y'|'Z'`.
      - pygeodesy.namedTuples.UtmUps8Tuple: 8-Tuple `(zone, hemipole, easting, northing, band, datum, convergence, scale)` as `int`, `str`, `meter`, `meter`, `band` letter, `Datum`, `degrees` and `scalar`, where `zone` is `1..60` for UTM or `0` for UPS, `hemipole` `'N'|'S'` is the UTM hemisphere or the UPS pole and `band` is `""` or the (longitudinal) UTM band `'C'|'D'..'W'|'X'` or the (polar) UPS band `'A'|'B'|'Y'|'Z'`.
      - pygeodesy.namedTuples.UtmUpsLatLon5Tuple: 5-Tuple `(zone, band, hemipole, lat, lon)` as `int`, `str`, `str`, `degrees90` and `degrees180`, where `zone` is `1..60` for UTM or `0` for UPS, `band` is `""` or the (longitudinal) UTM band `'C'|'D'..'W'|'X'` or (polar) UPS band `'A'|'B'|'Y'|'Z'` and `hemipole` `'N'|'S'` is the UTM hemisphere or the UPS pole.
      - pygeodesy.namedTuples.Vector3Tuple: 3-Tuple `(x, y, z)` of (geocentric) components, all in `meter` or `units`.
      - pygeodesy.namedTuples.Vector4Tuple: 4-Tuple `(x, y, z, h)` of (geocentric) components, all in `meter` or `units`.
      - pygeodesy.ellipsoids.a_f2Tuple: 2-Tuple `(a, f)` specifying an ellipsoid by equatorial radius `a` in `meter` and scalar flattening `f`.
  - type: type(object) -> the object's type type(name, bases, dict) -> a new type
    - abc.ABCMeta: Metaclass for defining Abstract Base Classes (ABCs).