Package pygeodesy :: Module rhumbx :: Class _RhumbLine |
[frames] | no frames]

# Class _RhumbLine

      object --+
               |
    named._Named --+
                   |
    named._NamedBase --+
                       |
        karney._CapsBase --+
                           |
                          _RhumbLine

Known Subclasses:
  - RhumbLine

(INTERNAL) Class RhumbLine

Instance Methods
__init__(self, rhumb, lat1, lon1, azi12, caps=0, name='') New `RhumbLine`. |
__del__(self) |
distance2(self, lat, lon) Return the distance and (initial) bearing of a point to this rhumb line's start point. |
intersection2(self, other, tol=1.4901161193847656e-08, **eps) Iteratively find the intersection of this and an other rhumb line. |
nearestOn4(self, lat, lon, tol=1.4901161193847656e-08, **eps) Iteratively locate the point on this rhumb line nearest to the given point. |
Position(self, s12, outmask=384) Compute a position at a distance on this rhumb line. |
toStr(self, prec=6, sep=', ', **unused) Return this `RhumbLine` as string. |
Inherited from `karney._CapsBase`: `caps_` Inherited from `named._NamedBase`: `__repr__`, `__str__`, `others`, `toRepr` Inherited from `named._Named`: `__imatmul__`, `__matmul__`, `__rmatmul__`, `attrs`, `classof`, `copy`, `dup`, `methodname`, `rename`, `toStr2` Inherited from `object`: `__delattr__`, `__format__`, `__getattribute__`, `__hash__`, `__new__`, `__reduce__`, `__reduce_ex__`, `__setattr__`, `__sizeof__`, `__subclasshook__`

Class Variables
Inherited from `karney._CapsBase`: `ALL`, `AREA`, `AZIMUTH`, `DISTANCE`, `DISTANCE_IN`, `EMPTY`, `GEODESICSCALE`, `LATITUDE`, `LINE_OFF`, `LONGITUDE`, `LONG_UNROLL`, `REDUCEDLENGTH`, `STANDARD`

Properties
| azi12 Get this rhumb line's azimuth (compass `degrees`).
| ellipsoid Get this rhumb line's ellipsoid (Ellipsoid).
| exact Get this rhumb line's exact option (`bool`).
| lat1 Get this rhumb line's latitude (`degrees90`).
| lon1 Get this rhumb line's longitude (`degrees180`).
| latlon1 Get this rhumb line's lat- and longitude (LatLon2Tuple`(lat, lon)`).
| RAorder Get this rhumb line's Rhumb Area order (`int`, 4, 5, 6, 7 or 8).
| rhumb Get this rhumb line's rhumb (Rhumb).
| TMorder Get this rhumb line's Transverse Mercator order (`int`, 4, 5, 6, 7 or 8).
| xTM Get this rhumb line's Transverse Mercator projection (ExactTransverseMercator if exact and ellipsoidal, otherwise KTransverseMercator).
Inherited from `karney._CapsBase`: `caps`, `debug` Inherited from `named._Named`: `classname`, `classnaming`, `iteration`, `name`, `named`, `named2`, `named3`, `named4` Inherited from `object`: `__class__`

Method Details

### __init__ (self, rhumb, lat1, lon1, azi12, caps=0, name='') (Constructor) |
New `RhumbLine`. Overrides: object.__init__

### distance2 (self, lat, lon) |
Return the distance and (initial) bearing of a point to this rhumb line's start point. Arguments: `lat` - Latitude of the point (`degrees`). `lon` - Longitude of the points (`degrees`). Returns: A Distance2Tuple`(distance, initial)` with the `distance` in `meter` and `initial` bearing in `degrees`. See Also: Methods RhumbLine.intersection2 and RhumbLine.nearestOn4.

### intersection2 (self, other, tol=1.4901161193847656e-08, **eps) |
Iteratively find the intersection of this and an other rhumb line. Arguments: `other` - The other rhumb line (RhumbLine). `tol` - Tolerance for longitudinal convergence (`degrees`). `eps` - Tolerance for intersection3d3 (`EPS`). Returns: A LatLon2Tuple{(lat, lon)} with the `lat`- and `lon`gitude of the intersection point. Raises: `IntersectionError` - No convergence for this `tol` or no intersection for an other reason. See Also: Methods RhumbLine.distance2 and RhumbLine.nearestOn4 and function pygeodesy.intersection3d3. Note: Each iteration involves a round trip to this rhumb line's ExactTransverseMercator or KTransverseMercator projection and invoking function intersection3d3 in that domain.

### nearestOn4 (self, lat, lon, tol=1.4901161193847656e-08, **eps) |
Iteratively locate the point on this rhumb line nearest to the given point. Arguments: `lat` - Latitude of the point (`degrees`). `lon` - Longitude of the point (`degrees`). `tol` - Longitudinal convergence tolerance (`degrees`). `eps` - Tolerance for intersection3d3 (`EPS`). Returns: A NearestOn4Tuple`(lat, lon, distance, normal)` with the `lat`- and `lon`gitude of the nearest point on and the `distance` in `meter` to this rhumb line and with the azimuth of the `normal`, perpendicular to this rhumb line. Raises: `IntersectionError` - No convergence for this `eps` or no intersection for an other reason. See Also: Methods RhumbLine.distance2 and RhumbLine.intersection2 and function intersection3d3.

### Position (self, s12, outmask=384) |
Compute a position at a distance on this rhumb line. Arguments: `s12` - The distance along this rhumb between its point and the other point (`meters`), can be negative. `outmask` - Bit-or'ed combination of Caps values specifying the quantities to be returned. Returns: GDict with 4 to 8 items `azi12, a12, s12, S12, lat2, lon2, lat1, lon1` with latitude `lat2` and longitude `lon2` of the other point in `degrees`, the rhumb angle `a12` between both points in `degrees` and the area `S12` under the rhumb line in `meter` squared. Note: If `s12` is large enough that the rhumb line crosses a pole, the longitude of the second point is indeterminate and `NAN` is returned for `lon2` and area `S12`. If the first point is a pole, the cosine of its latitude is taken to be `epsilon`**-2 (where `epsilon` is 2**-52). This position is extremely close to the actual pole and allows the calculation to be carried out in finite terms.

### toStr (self, prec=6, sep=', ', **unused) |
Return this `RhumbLine` as string. Arguments: `prec` - The `float` precision, number of decimal digits (0..9). Trailing zero decimals are stripped for `prec` values of 1 and above, but kept for negative `prec` values. `sep` - Separator to join (`str`). Returns: `RhumbLine` (`str`). Overrides: named._Named.toStr

Property Details

### azi12 Get this rhumb line's azimuth (compass `degrees`). Get method: azi12(self) - Get this rhumb line's azimuth (compass `degrees`). Set method: azi12(self, azi12) - Set this rhumb line's azimuth (compass `degrees`). Delete Method: _fdel(inst) - Zap the cached/memoized `property` value.

### ellipsoid Get this rhumb line's ellipsoid (Ellipsoid). Get method: ellipsoid(self) - Get this rhumb line's ellipsoid (Ellipsoid). Set method: _fset_error(inst, val) - Throws an `AttributeError`, always. Delete Method: _fdel(inst) - Zap the cached/memoized `property` value.

### exact Get this rhumb line's exact option (`bool`). Get method: exact(self) - Get this rhumb line's exact option (`bool`). Set method: _fset_error(inst, val) - Throws an `AttributeError`, always. Delete Method: _fdel(inst) - Zap the cached/memoized `property` value.

### lat1 Get this rhumb line's latitude (`degrees90`). Get method: lat1(self) - Get this rhumb line's latitude (`degrees90`). Set method: _fset_error(inst, val) - Throws an `AttributeError`, always. Delete Method: _fdel(inst) - Zap the cached/memoized `property` value.

### lon1 Get this rhumb line's longitude (`degrees180`). Get method: lon1(self) - Get this rhumb line's longitude (`degrees180`). Set method: _fset_error(inst, val) - Throws an `AttributeError`, always. Delete Method: _fdel(inst) - Zap the cached/memoized `property` value.

### latlon1 Get this rhumb line's lat- and longitude (LatLon2Tuple`(lat, lon)`). Get method: latlon1(self) - Get this rhumb line's lat- and longitude (LatLon2Tuple`(lat, lon)`). Set method: _fset_error(inst, val) - Throws an `AttributeError`, always. Delete Method: _fdel(inst) - Zap the cached/memoized `property` value.

### RAorder Get this rhumb line's Rhumb Area order (`int`, 4, 5, 6, 7 or 8). Get method: RAorder(self) - Get this rhumb line's Rhumb Area order (`int`, 4, 5, 6, 7 or 8). Set method: _fset_error(inst, val) - Throws an `AttributeError`, always. Delete Method: _fdel(inst) - Zap the cached/memoized `property` value.

### rhumb Get this rhumb line's rhumb (Rhumb). Get method: rhumb(self) - Get this rhumb line's rhumb (Rhumb). Set method: _fset_error(inst, val) - Throws an `AttributeError`, always. Delete Method: _fdel(inst) - Zap the cached/memoized `property` value.

### TMorder Get this rhumb line's Transverse Mercator order (`int`, 4, 5, 6, 7 or 8). Get method: TMorder(self) - Get this rhumb line's Transverse Mercator order (`int`, 4, 5, 6, 7 or 8). Set method: _fset_error(inst, val) - Throws an `AttributeError`, always. Delete Method: _fdel(inst) - Zap the cached/memoized `property` value.

### xTM Get this rhumb line's Transverse Mercator projection (ExactTransverseMercator if exact and ellipsoidal, otherwise KTransverseMercator). Get method: xTM(self) - Get this rhumb line's Transverse Mercator projection (ExactTransverseMercator if exact and ellipsoidal, otherwise KTransverseMercator). Set method: _fset_error(inst, val) - Throws an `AttributeError`, always. Delete Method: _fdel(inst) - Zap the cached/memoized `property` value.