Package pygeodesy :: Module nvectorBase :: Class LatLonNvectorBase |
[frames] | no frames]

# Class LatLonNvectorBase

       object --+
                |
     named._Named --+
                    |
     named._NamedBase --+
                        |
    latlonBase.LatLonBase --+
                            |
                           LatLonNvectorBase

Known Subclasses:
  - ellipsoidalNvector.LatLon
  - , sphericalNvector.LatLon

(INTERNAL) Base class for n-vector-based ellipsoidal and spherical `LatLon` classes.

Instance Methods
intersections2(self, radius1, other, radius2, **kwds) Not implemented, throws a `NotImplementedError` always. |
others(self, *other, **name_other_up) Refined class comparison. |
toNvector(self, Nvector=<class 'pygeodesy.nvectorBase.NvectorBase'>, **Nvector_kwds) Convert this point to `Nvector` components, including height. |
triangulate(self, bearing1, other, bearing2, height=None) Locate a point given this and an other point and a bearing at this and the other point. |
trilaterate(self, distance1, point2, distance2, point3, distance3, radius=6371008.77141, height=None, useZ=False) Locate a point at given distances from this and two other points. |
trilaterate5(self, distance1, point2, distance2, point3, distance3, area=False, eps=1.0, radius=6371008.77141, wrap=False) Not implemented for `area=True` or `wrap=True` and falls back to method `trilaterate` otherwise. |
Inherited from `latlonBase.LatLonBase`: `PointsIter`, `__eq__`, `__init__`, `__ne__`, `__str__`, `_distanceTo_`, `antipode`, `bounds`, `boundsOf`, `chordTo`, `circin6`, `circum3`, `circum4_`, `compassAngle`, `compassAngleTo`, `cosineAndoyerLambertTo`, `cosineForsytheAndoyerLambertTo`, `cosineLawTo`, `destinationXyz`, `equals`, `equals3`, `equirectangularTo`, `euclideanTo`, `flatLocalTo`, `flatPolarTo`, `hartzell`, `haversineTo`, `height4`, `heightStr`, `hubenyTo`, `isantipode`, `isantipodeTo`, `isequalTo`, `isequalTo3`, `latlon2`, `latlon2round`, `latlon_`, `philam2`, `points`, `points2`, `radii11`, `thomasTo`, `to2ab`, `to3llh`, `to3xyz`, `toCartesian`, `toEcef`, `toLocal`, `toLtp`, `toStr`, `toVector`, `toVector3d`, `vincentysTo` Inherited from `named._NamedBase`: `__repr__`, `toRepr` Inherited from `named._Named`: `_DOT_`, `attrs`, `classof`, `copy`, `rename`, `toStr2` Inherited from `object`: `__delattr__`, `__format__`, `__getattribute__`, `__hash__`, `__new__`, `__reduce__`, `__reduce_ex__`, `__setattr__`, `__sizeof__`, `__subclasshook__`

Properties
Inherited from `latlonBase.LatLonBase`: `Ecef`, `datum`, `height`, `isEllipsoidal`, `isSpherical`, `lam`, `lat`, `latlon`, `latlonheight`, `lon`, `phi`, `philam`, `philamheight`, `xyz`, `xyzh` Inherited from `named._Named`: `classname`, `classnaming`, `name`, `named`, `named2`, `named3`, `named4` Inherited from `object`: `__class__`

Method Details

### others (self, *other, **name_other_up) |
Refined class comparison. Arguments: `other` - The other instance (`LatLonNvectorBase`). `name_other_up` - Overriding `name=other` and `up=1` keyword arguments. Returns: The `other` if compatible. Raises: `TypeError` - Incompatible `other` `type`. Overrides: named._NamedBase.others

### toNvector (self, Nvector=<class 'pygeodesy.nvectorBase.NvectorBase'>, **Nvector_kwds) |
Convert this point to `Nvector` components, including height. Arguments: `Nvector_kwds` - Optional, additional `Nvector` keyword arguments, ignored if `Nvector is None`. Returns: An `Nvector` or a Vector4Tuple`(x, y, z, h)` if `Nvector` is `None`. Raises: `TypeError` - Invalid `Nvector` or `Nvector_kwds` argument. Overrides: latlonBase.LatLonBase.toNvector

### triangulate (self, bearing1, other, bearing2, height=None) |
Locate a point given this and an other point and a bearing at this and the other point. Arguments: `bearing1` - Bearing at this point (compass `degrees360`). `other` - The other point (`LatLon`). `bearing2` - Bearing at the other point (compass `degrees360`). `height` - Optional height at the triangulated point, overriding the mean height (`meter`). Returns: Triangulated point (`LatLon`). Raises: `TypeError` - Invalid `other` point. `Valuerror` - Points coincide. Example:
    >>> p = LatLon("47°18.228'N","002°34.326'W")  # Basse Castouillet
    >>> q = LatLon("47°18.664'N","002°31.717'W")  # Basse Hergo
    >>> t = p.triangulate(7, q, 295)  # 47.323667°N, 002.568501°W'

### trilaterate (self, distance1, point2, distance2, point3, distance3, radius=6371008.77141, height=None, useZ=False) |
Locate a point at given distances from this and two other points. Arguments: `distance1` - Distance to this point (`meter`, same units as `radius`). `point2` - Second reference point (`LatLon`). `distance2` - Distance to point2 (`meter`, same units as `radius`). `point3` - Third reference point (`LatLon`). `distance3` - Distance to point3 (`meter`, same units as `radius`). `radius` - Mean earth radius (`meter`). `height` - Optional height at trilaterated point, overriding the mean height (`meter`, same units as `radius`). `useZ` - Include Z component iff non-NaN, non-zero (`bool`). Returns: Trilaterated point (`LatLon`). Raises: `IntersectionError` - No intersection, trilateration failed. `TypeError` - Invalid `point2` or `point3`. `ValueError` - Some `points` coincide or invalid `distance1`, `distance2`, `distance3` or `radius`. See Also: Trilateration, Veness' JavaScript Trilateration and method `LatLon.trilaterate2` of other, non-`Nvector LatLon` classes.

### trilaterate5 (self, distance1, point2, distance2, point3, distance3, area=False, eps=1.0, radius=6371008.77141, wrap=False) |
Not implemented for `area=True` or `wrap=True` and falls back to method `trilaterate` otherwise. Returns: A Trilaterate5Tuple`(min, minPoint, max, maxPoint, n)` with a single trilaterated intersection `minPoint is maxPoint`, `min is max` the nearest intersection margin and count `n = 1`. Raises: `IntersectionError` - No intersection, trilateration failed. `NotImplementedError` - Keyword argument `area=True` or `wrap=True` not (yet) supported. `TypeError` - Invalid `point2` or `point3`. `ValueError` - Coincident `points` or invalid `distance1`, `distance2`, `distance3` or `radius`.