Package pygeodesy :: Module geodsolve :: Class GeodesicLineSolve |
[frames] | no frames]

# Class GeodesicLineSolve

           object --+
                    |
         named._Named --+
                        |
         named._NamedBase --+
                            |
             karney._CapsBase --+
                                |
    solveBase._SolveLineSolveBase --+
                                    |
                 solveBase._SolveBase --+
                                        |
                       _GeodesicSolveBase --+
                                            |
               object --+                   |
                        |                   |
             named._Named --+               |
                            |               |
             named._NamedBase --+           |
                                |           |
                 karney._CapsBase --+       |
                                    |       |
        solveBase._SolveLineSolveBase --+   |
                                        |   |
                 solveBase._SolveLineBase --+
                                            |
                                           GeodesicLineSolve

Wrapper to invoke Karney's GeodSolve as an `Exact` version of Karney's Python class GeodesicLine.

Notes:

- Use property `GeodSolve` or env variable `PYGEODESY_GEODSOLVE` to specify the (fully qualified) path to the `GeodSolve` executable.
- This `geodesic` is intended for testing purposes only, it invokes the `GeodSolve` executable for every method call.

Instance Methods
__init__(self, geodesic, lat1, lon1, azi1, caps=32640, name='') New GeodesicLineSolve instance, allowing points to be found along a geodesic starting at `(lat1, lon1)` with azimuth `azi1`. |
ArcPosition(self, a12, outmask=`'``UNUSED``'`) Find the position on the line given `a12`. |
Intersecant2(self, lat0, lon0, radius, **kwds) Not implemented, throws a `NotImplementedError` always. |
PlumbTo(self, lat0, lon0, **kwds) Not implemented, throws a `NotImplementedError` always. |
Position(self, s12, outmask=`'``UNUSED``'`) Find the position on the line given `s12`. |
toStr(self, **prec_sep) Return this `GeodesicLineSolve` as string. |
Inherited from `solveBase._SolveBase`: `Direct`, `Inverse`, `Inverse1` Inherited from `solveBase._SolveLineSolveBase`: `invoke` 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
| azi1 Get the azimuth at the first point (compass `degrees`).
| azi12 Get the azimuth at the first point (compass `degrees`).
| azi1_sincos2 Get the sine and cosine of the first point's azimuth (2-tuple `(sin, cos)`).
| azi12_sincos2 Get the sine and cosine of the first point's azimuth (2-tuple `(sin, cos)`).
Inherited from `_GeodesicSolveBase`: `GeodSolve` Inherited from `solveBase._SolveBase`: `a`, `datum`, `ellipsoid`, `f`, `flattening` Inherited from `solveBase._SolveLineBase`: `lat1`, `lon1` Inherited from `solveBase._SolveLineSolveBase`: `Exact`, `invokation`, `prec`, `reverse2`, `status`, `unroll`, `verbose`, `version` Inherited from `karney._CapsBase`: `caps`, `debug` Inherited from `named._Named`: `classname`, `classnaming`, `iteration`, `name`, `named`, `named2`, `named3`, `named4`, `sizeof` Inherited from `object`: `__class__`

Method Details

### __init__ (self, geodesic, lat1, lon1, azi1, caps=32640, name='') (Constructor) |
New GeodesicLineSolve instance, allowing points to be found along a geodesic starting at `(lat1, lon1)` with azimuth `azi1`. Arguments: `geodesic` - The geodesic to use (GeodesicSolve). `lat1` - Latitude of the first point (`degrees`). `lon1` - Longitude of the first point (`degrees`). `azi1` - Azimuth at the first points (compass `degrees`). `caps` - Bit-or'ed combination of Caps values specifying the capabilities the GeodesicLineSolve instance should possess, always `Caps.ALL`. Use `Caps.LINE_OFF` if updates to the `geodesic` should not be reflected in this GeodesicLineSolve instance. `name` - Optional name (`str`). Raises: `GeodesicError` - Invalid path for the `GeodSolve` executable or or isn't the `GeodSolve` executable, see property `geodesic.GeodSolve`. `TypeError` - Invalid `geodesic`. Overrides: object.__init__

### ArcPosition (self, a12, outmask=`'``UNUSED``'`) |
Find the position on the line given `a12`. Arguments: `a12` - Spherical arc length from the first point to the second point (`degrees`). Returns: A `GDict` with 12 items `lat1, lon1, azi1, lat2, lon2, azi2, m12, a12, s12, M12, M21, S12`.

### Position (self, s12, outmask=`'``UNUSED``'`) |
Find the position on the line given `s12`. Arguments: `s12` - Distance from the first point to the second (`meter`). Returns: A `GDict` with 12 items `lat1, lon1, azi1, lat2, lon2, azi2, m12, a12, s12, M12, M21, S12`, possibly `a12=NAN`.

### toStr (self, **prec_sep) |
Return this `GeodesicLineSolve` as string. Arguments: `prec_sep` - Keyword argumens `prec=6` and `sep=', '` for the `float` `prec`ision, number of decimal digits (0..9) and the `sep`arator string to join. Trailing zero decimals are stripped for `prec` values of 1 and above, but kept for negative `prec` values. Returns: GeodesicLineSolve items (`str`). Overrides: named._Named.toStr

Property Details

### azi1 Get the azimuth at the first point (compass `degrees`). Get method: azi1(self) - Get the azimuth at the first point (compass `degrees`). Set method: _fset_error(inst, val) - Throws an `AttributeError`, always. Delete Method: _fdel(inst) - Zap the cached/memoized `property` value.

### azi12 Get the azimuth at the first point (compass `degrees`). Get method: azi1(self) - Get the azimuth at the first point (compass `degrees`). Set method: _fset_error(inst, val) - Throws an `AttributeError`, always. Delete Method: _fdel(inst) - Zap the cached/memoized `property` value.

### azi1_sincos2 Get the sine and cosine of the first point's azimuth (2-tuple `(sin, cos)`). Get method: azi1_sincos2(self) - Get the sine and cosine of the first point's azimuth (2-tuple `(sin, cos)`). Set method: _fset_error(inst, val) - Throws an `AttributeError`, always. Delete Method: _fdel(inst) - Zap the cached/memoized `property` value.

### azi12_sincos2 Get the sine and cosine of the first point's azimuth (2-tuple `(sin, cos)`). Get method: azi1_sincos2(self) - Get the sine and cosine of the first point's azimuth (2-tuple `(sin, cos)`). Set method: _fset_error(inst, val) - Throws an `AttributeError`, always. Delete Method: _fdel(inst) - Zap the cached/memoized `property` value.