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

Module karney

Wrapper around several geomath.Math functions from Karney's Python package geographiclib, provided that package is installed.

The wrapped class methods return a GDict instance offering access to the dict items either by key or by attribute name. All methods of the wrapped Geodesic and GeodesicLine classes return a GDict instance offering access to the dict items either by key or by attribute name.

With env variable PYGEODESY_GEOGRAPHICLIB left undefined or set to "2", modules geodesicx, geodesicw and this module will use GeographicLib 2.0 and newer transcoding, otherwise 1.52 or older.

Karney-based functionality

  1. The following classes and functions in pygeodesy

    are transcoded from C++ classes in Karney's GeographicLib.

  2. These pygeodesy modules and classes

    are or use wrappers around Karney's Python geographiclib geodesic, C++ utility GeodSolve or C++ utility RhumbSolve.

  3. All pygeodesy functions and methods to compute ellipsoidal intersections, nearest points and trilaterations

    are implementations of Karney's iterative solution posted under The ellipsoidal case and in paper Geodesics on an ellipsoid of revolution (pp 20-21, section 14. MARITIME BOUNDARIES).

  4. The pygeodesy methods to compute ellipsoidal intersections and nearest points

    are transcoded of Karney's iterative C++ function rhumb-intercept.

  5. Spherical functions

    in pygeodesy are based on Karney's post Area of a spherical polygon, 3rd Answer.


Version: 24.03.22

Classes
  Area3Tuple
3-Tuple (number, perimeter, area) with the number of points of the polygon or polyline, the perimeter in meter and the area in meter squared.
  _CapsBase
(INTERNAL) Base class for [_]Geodesic*Exact.
  Direct9Tuple
9-Tuple (a12, lat2, lon2, azi2, s12, m12, M12, M21, S12) with arc length a12, angles lat2, lon2 and azimuth azi2 in degrees, distance s12 and reduced length m12 in meter and area S12 in meter squared.
  GDict
A dict with both key and attribute access to the dict items.
  Inverse10Tuple
10-Tuple (a12, s12, salp1, calp1, salp2, calp2, m12, M12, M21, S12) with arc length a12 in degrees, distance s12 and reduced length m12 in meter, area S12 in meter squared and the sines salp1, salp2 and cosines calp1, calp2 of the initial 1 and final 2 (forward) azimuths.
  Rhumb8Tuple
8-Tuple (lat1, lon1, lat2, lon2, azi12, s12, S12, a12) with lat- lat1, lat2 and longitudes lon1, lon2 of both points, the azimuth of the rhumb line azi12, the distance s12, the area S12 under the rhumb line and the angular distance a12 between both points.
Variables
  __all__ = _ALL_LAZY.karney
  Caps = Caps()
Enum-style masks to be bit-or'ed to specify geodesic or rhumb capabilities (caps) and expected results (outmask).
Variables Details

Caps

Enum-style masks to be bit-or'ed to specify geodesic or rhumb capabilities (caps) and expected results (outmask).

AREA - compute area S12,

AZIMUTH - include azimuths azi1 and azi2,

DISTANCE - compute distance s12,

DISTANCE_IN - allow distance s12 in .Direct,

EMPTY - nothing, formerly aka NONE,

GEODESICSCALE - compute geodesic scales M12 and M21,

LATITUDE - compute latitude lat2,

LINE_OFF - Line without updates from parent geodesic or rhumb.

LONGITUDE - compute longitude lon2,

LONG_UNROLL - unroll lon2 in .Direct,

REDUCEDLENGTH - compute reduced length m12,

REVERSE2 - reverse azi2,

and ALL - all of the above.

STANDARD = AZIMUTH | DISTANCE | DISTANCE_IN | LATITUDE | LONGITUDE

Value:
Caps()