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

# Module ellipsoidalBase

(INTERNAL) Private ellipsoidal base classes `CartesianEllipsoidalBase` and `LatLonEllipsoidalBase`.

A pure Python implementation of geodesy tools for ellipsoidal earth models, transcoded in part from JavaScript originals by (C) Chris Veness 2005-2016 and published under the same MIT Licence**, see for example latlon-ellipsoidal.

Version: 23.10.10

Classes
| CartesianEllipsoidalBase (INTERNAL) Base class for ellipsoidal `Cartesian`s.
| LatLonEllipsoidalBase (INTERNAL) Base class for ellipsoidal `LatLon`s.

Functions
intersecant2(center, circle, point, bearing, radius=None, exact=False, height=None, wrap=False) Compute the intersections of a circle and a line given as a point and bearing or as two points. |

Variables
| __all__ = `_ALL_LAZY.ellipsoidalBase`

Function Details

### intersecant2 (center, circle, point, bearing, radius=None, exact=False, height=None, wrap=False) |
Compute the intersections of a circle and a line given as a point and bearing or as two points. Arguments: `center` - Center of the circle (`LatLon`). `circle` - Radius of the circle (`meter`, same units as `radius`) or a point on the circle (`LatLon`). `point` - A point in- or outside the circle on the line (`LatLon`). `bearing` - Bearing at the `point` (compass `degrees360`) or an other point on the line (`LatLon`). `radius` - Optional earth radius (`meter`) or earth model (Datum, Ellipsoid, Ellipsoid2 or a_f2Tuple), overriding the `center`'s and `point`'s datum. `exact` - Exact `Rhumb...` to use (`bool` or `Rhumb...`), see method Ellipsoid.rhumb_. `height` - Optional height for the intersection points (`meter`, conventionally) or `None`. `wrap` - If `True`, wrap or normalize and unroll the `point` and the `circle` and `bearing` points (`bool`). Returns: 2-Tuple of the intersection points (representing a chord), each an instance of this class. For a tangent line, both points are the same instance, the `point` or wrapped or normalized. Raises: `IntersectionError` - The circle and line do not intersect. `TypeError` - If `center` or `point` not ellipsoidal `LatLon` or `circle` or `bearing` invalid. `ValueError` - Invalid `circle`, `bearing`, `radius`, `exact` or `height`. See Also: Methods RhumbLineAux.Intersecant2 and RhumbLine.Intersecant2.