Package pygeodesy :: Module geodesici :: Class Intersectool |
[frames] | no frames]

# Class Intersectool

          object --+
                   |
        named._Named --+
                       |
        named._NamedBase --+
                           |
              _IntersectBase --+
                               |
      object --+               |
               |               |
    named._Named --+           |
                   |           |
    named._NamedBase --+       |
                       |       |
        karney._CapsBase --+   |
                           |   |
    solveBase._SolveCapsBase --+
                               |
                              Intersectool

Wrapper to invoke Karney's utility IntersectTool similar to class Intersector.

Notes:

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

Instance Methods
__init__(self, a_geodesic=None, f=None, **name) New IntersectTool. |
All(self, glA, glB, X0=XDict(c=0, sA=0.0, sB=0.0, sX0=0.0), eps1=0.0, aMaX0=0, **sMaX0_C) Yield all intersection of two geodesic lines up to a limit. |
All5(self, glA, glB, X0=XDict(c=0, sA=0.0, sB=0.0, sX0=0.0), **aMaX0_sMaX0) Yield all intersection of two geodesic lines up to a limit. |
Closest(self, glA, glB, X0=XDict(c=0, sA=0.0, sB=0.0, sX0=0.0), _C=False) Find the closest intersection of two geodesic lines. |
Closest5(self, glA, glB, **unused) Find the closest intersection of two geodesic lines. |
Line(self, lat1, lon1, azi1_lat2, *lon2, **name) Return a geodesic line from this `Intersector`'s geodesic, specified by two (goedetic) points or a (goedetic) point and an (forward) azimuth. |
Middle(self, glA, glB, **_C) Get the mid-points on two geodesic line segments. |
Middle5(self, glA, glB, **unused) Get the mid-points on two geodesic line segments and their distance. |
Next(self, glA, glB, eps1=None, **_C) Find the next intersection of two intersecting geodesic lines. |
Next5(self, glA, glB, **eps1) Find the next intersection of two intersecting geodesic lines. |
Segment(self, glA, glB, **_C_unused) Find the intersection between two geodesic line segments. |
Segment5(self, glA, glB, **unused) Find the next intersection of two intersecting geodesic lines. |
toStr(self, prec=6, sep=', ', **unused) Return this `Intersectool` as string. |
Inherited from `_IntersectBase`: `Next5s`, `intersect7`, `k2kAkB` Inherited from `solveBase._SolveCapsBase`: `invokat`, `invoke`, `linelimit` 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`, `renamed`, `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_CAPS`, `LINE_OFF`, `LONGITUDE`, `LONG_UNROLL`, `REDUCEDLENGTH`, `STANDARD`

Properties
| IntersectTool Get the IntersectTool executable (`filename`).
Inherited from `_IntersectBase`: `R`, `a`, `datum`, `ellipsoid`, `equatoradius`, `f`, `flattening`, `geodesic` Inherited from `solveBase._SolveCapsBase`: `Exact`, `invokation`, `prec`, `status`, `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, a_geodesic=None, f=None, **name) (Constructor) |
New IntersectTool. Arguments: `a_geodesic` - Earth' equatorial axis (`meter`) or a geodesic (GeodesicExact, wrapped Geodesic or GeodesicSolve). `f` - Earth' flattening (`scalar`), required if `a_geodesic` is in `meter`, ignored otherwise. `name` - Optional `name=NN` (`str`). Raises: `GeodesicError` - The eccentricity of the `geodesic`'s ellipsoid is too large or no initial convergence. Overrides: object.__init__ See Also: The Note at Karney's C++ Intersect.

### All (self, glA, glB, X0=XDict(c=0, sA=0.0, sB=0.0, sX0=0.0), eps1=0.0, aMaX0=0, **sMaX0_C) |
Yield all intersection of two geodesic lines up to a limit. Arguments: `eps1` - Optional margin for the euclidean distance (`degrees`) between the `(lat1, lon1)` points of both lines for using the IntersectTool's `"-n"` option, unless `eps1=None`. Returns: An XDict for each intersection. Overrides: _IntersectBase.All

### All5 (self, glA, glB, X0=XDict(c=0, sA=0.0, sB=0.0, sX0=0.0), **aMaX0_sMaX0) |
Yield all intersection of two geodesic lines up to a limit. Returns: An Intersectool5Tuple for each intersection.

### Closest (self, glA, glB, X0=XDict(c=0, sA=0.0, sB=0.0, sX0=0.0), _C=False) |
Find the closest intersection of two geodesic lines. Arguments: `_C` - Use `_C=True` to include the `"-C"` results (`bool`). Returns: An XDict.

### Closest5 (self, glA, glB, **unused) |
Find the closest intersection of two geodesic lines. Returns: An Intersectool5Tuple.

### Line (self, lat1, lon1, azi1_lat2, *lon2, **name) |
Return a geodesic line from this `Intersector`'s geodesic, specified by two (goedetic) points or a (goedetic) point and an (forward) azimuth. Returns: A 3- or 6-item, named GDict. Overrides: _IntersectBase.Line

### Middle (self, glA, glB, **_C) |
Get the mid-points on two geodesic line segments. Arguments: `_C` - Use `_C=True` to include the `"-C"` results (`bool`). Returns: An XDict.

### Middle5 (self, glA, glB, **unused) |
Get the mid-points on two geodesic line segments and their distance. Returns: A Middle5Tuple.

### Next (self, glA, glB, eps1=None, **_C) |
Find the next intersection of two intersecting geodesic lines. Arguments: `_C` - Use `_C=True` to include the option `"-C"` results (`bool`). Returns: An XDict.

### Next5 (self, glA, glB, **eps1) |
Find the next intersection of two intersecting geodesic lines. Returns: An Intersectool5Tuple.

### Segment (self, glA, glB, **_C_unused) |
Find the intersection between two geodesic line segments. Arguments: `_C` - Use `_C=True` to include the option `"-C"` results (`bool`). Returns: An XDict.

### Segment5 (self, glA, glB, **unused) |
Find the next intersection of two intersecting geodesic lines. Returns: An Intersectool5Tuple.

### toStr (self, prec=6, sep=', ', **unused) |
Return this `Intersectool` 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: Intersectool items (`str`). Overrides: named._Named.toStr

Property Details

### IntersectTool Get the IntersectTool executable (`filename`). Get method: IntersectTool(self) - Get the IntersectTool executable (`filename`). Set method: IntersectTool(self, path) - Set the IntersectTool executable (`filename`), the (fully qualified) path to the `IntersectTool` executable. Delete Method: _fdel(inst) - Zap the cached/memoized `property` value.