Package pygeodesy :: Module triaxials :: Class Triaxial |
[frames] | no frames]

# Class Triaxial

      object --+
               |
    named._Named --+
                   |
    named._NamedBase --+
                       |
    named._NamedEnumItem --+
                           |
                   Triaxial_ --+
                               |
                              Triaxial

Known Subclasses:
  - JacobiConformal

Ordered triaxial ellipsoid.

See Also: Triaxial_ for more information.

Instance Methods
__init__(self, a_triaxial, b=None, c=None, **name) New ordered Triaxial. |
forwardBetaOmega(self, beta, omega, height=0, **name) Convert ellipsoidal lat- `beta`, longitude `omega` and `height` to cartesian. |
forwardBetaOmega_(self, sbeta, cbeta, somega, comega, **name) Convert ellipsoidal lat- and longitude `beta` and `omega` to cartesian coordinates on the triaxial's surface. |
forwardCartesian(self, x_xyz, y=None, z=None, **normal_eps_name) Project a cartesian on this triaxial. |
forwardLatLon(self, lat, lon, height=0, **name) Convert geodetic lat-, longitude and height to cartesian. |
forwardLatLon_(self, slat, clat, slon, clon, height=0, **name) Convert geodetic lat-, longitude and height to cartesian. |
reverseBetaOmega(self, x_xyz, y=None, z=None, **name) Convert cartesian to ellipsoidal lat- and longitude, `beta`, `omega` and height. |
reverseCartesian(self, x_xyz, y=None, z=None, h=0, normal=True, eps=4.440892098500626e-12, **name) Unproject" a cartesian on this triaxial's surface to a cartesion off this triaxial's surface. |
reverseLatLon(self, x_xyz, y=None, z=None, **name) Convert cartesian to geodetic lat-, longitude and height. |
Inherited from `Triaxial_`: `__str__`, `area_p`, `hartzell4`, `height4`, `normal3d`, `sideOf`, `toEllipsoid`, `toStr` Inherited from `named._NamedEnumItem`: `unregister` Inherited from `named._NamedBase`: `__repr__`, `others`, `toRepr` Inherited from `named._Named`: `__format__`, `__imatmul__`, `__matmul__`, `__rmatmul__`, `attrs`, `classof`, `copy`, `dup`, `methodname`, `rename`, `renamed`, `toStr2` Inherited from `object`: `__delattr__`, `__getattribute__`, `__hash__`, `__new__`, `__reduce__`, `__reduce_ex__`, `__setattr__`, `__sizeof__`, `__subclasshook__`

Properties
| area Get the surface area (`meter` squared).
Inherited from `Triaxial_`: `a`, `b`, `c`, `e2ab`, `e2ac`, `e2bc`, `isOrdered`, `isSpherical`, `unOrdered`, `volume` Inherited from `named._NamedEnumItem`: `name` Inherited from `named._Named`: `classname`, `classnaming`, `iteration`, `named`, `named2`, `named3`, `named4`, `sizeof`, `typename` Inherited from `object`: `__class__`

Method Details

### __init__ (self, a_triaxial, b=None, c=None, **name) (Constructor) |
New ordered Triaxial. Arguments: `a_triaxial` - Largest semi-axis (`scalar`, conventionally in `meter`) or an other Triaxial or Triaxial_ instance. `b` - Middle semi-axis (`meter`, same units as `a`), required if `a_triaxial is scalar`, ignored otherwise. `c` - Smallest semi-axis (`meter`, like `b`). `name` - Optional `name=NN` (`str`). Raises: `TriaxialError` - Semi-axes unordered, spherical or invalid. Overrides: object.__init__ Note: The semi-axes must be ordered as `a >= b >= c > 0` and must be ellipsoidal, `a > c`.

### forwardBetaOmega (self, beta, omega, height=0, **name) |
Convert ellipsoidal lat- `beta`, longitude `omega` and `height` to cartesian. Arguments: `beta` - Ellipsoidal latitude (`radians` or Degrees). `omega` - Ellipsoidal longitude (`radians` or Degrees). `height` - Height above or below the ellipsoid's surface (`meter`, same units as this triaxial's `a`, `b` and `c` semi-axes). `name` - Optional `name=NN` (`str`). Returns: A Vector3Tuple`(x, y, z)`. See Also: Method Triaxial.reverseBetaOmega and expressions (23-25).

### forwardBetaOmega_ (self, sbeta, cbeta, somega, comega, **name) |
Convert ellipsoidal lat- and longitude `beta` and `omega` to cartesian coordinates on the triaxial's surface. Arguments: `sbeta` - Ellipsoidal latitude `sin(beta)` (`scalar`). `cbeta` - Ellipsoidal latitude `cos(beta)` (`scalar`). `somega` - Ellipsoidal longitude `sin(omega)` (`scalar`). `comega` - Ellipsoidal longitude `cos(omega)` (`scalar`). `name` - Optional `name=NN` (`str`). Returns: A Vector3Tuple`(x, y, z)` on the surface. Raises: `TriaxialError` - This triaxial is near-spherical. See Also: Method Triaxial.reverseBetaOmega, Triaxial ellipsoid coordinate system and expressions (23-25).

### forwardCartesian (self, x_xyz, y=None, z=None, **normal_eps_name) |
Project a cartesian on this triaxial. Arguments: `x_xyz` - X component (`scalar`) or a cartesian (`Cartesian`, Ecef9Tuple, Vector3d, Vector3Tuple or Vector4Tuple). `y` - Y component (`scalar`), required if `x_xyz` if `scalar`, ignored otherwise. `z` - Z component (`scalar`), like `y`. `normal_eps_name` - Optional keyword arguments `normal=True`, `eps=EPS` and overriding `name="height4"` (`str`), see method Triaxial.height4. See Also: Method Triaxial.height4 for further information and method Triaxial.reverseCartesian to reverse the projection.

### forwardLatLon (self, lat, lon, height=0, **name) |
Convert geodetic lat-, longitude and height to cartesian. Arguments: `lat` - Geodetic latitude (`degrees`). `lon` - Geodetic longitude (`degrees`). `height` - Height above the ellipsoid (`meter`, same units as this triaxial's `a`, `b` and `c` axes). `name` - Optional `name=NN` (`str`). Returns: A Vector3Tuple`(x, y, z)`. See Also: Method Triaxial.reverseLatLon and expressions (9-11).

### forwardLatLon_ (self, slat, clat, slon, clon, height=0, **name) |
Convert geodetic lat-, longitude and height to cartesian. Arguments: `slat` - Geodetic latitude `sin(lat)` (`scalar`). `clat` - Geodetic latitude `cos(lat)` (`scalar`). `slon` - Geodetic longitude `sin(lon)` (`scalar`). `clon` - Geodetic longitude `cos(lon)` (`scalar`). `height` - Height above the ellipsoid (`meter`, same units as this triaxial's axes `a`, `b` and `c`). `name` - Optional `name=NN` (`str`). Returns: A Vector3Tuple`(x, y, z)`. See Also: Method Triaxial.reverseLatLon and expressions (9-11).

### reverseBetaOmega (self, x_xyz, y=None, z=None, **name) |
Convert cartesian to ellipsoidal lat- and longitude, `beta`, `omega` and height. Arguments: `x_xyz` - X component (`scalar`) or a cartesian (`Cartesian`, Ecef9Tuple, Vector3d, Vector3Tuple or Vector4Tuple). `y` - Y component (`scalar`), required if `x_xyz` if `scalar`, ignored otherwise. `z` - Z component (`scalar`), like `y`. `name` - Optional `name=NN` (`str`). Returns: A BetaOmega3Tuple`(beta, omega, height)` with `beta` and `omega` in Radians and (radial) `height` in `meter`, same units as this triaxial's axes. See Also: Methods Triaxial.forwardBetaOmega and Triaxial.forwardBetaOmega_ and expressions (21-22).

### reverseCartesian (self, x_xyz, y=None, z=None, h=0, normal=True, eps=4.440892098500626e-12, **name) |
Unproject" a cartesian on this triaxial's surface to a cartesion off this triaxial's surface. Arguments: `x_xyz` - X component (`scalar`) or a cartesian (`Cartesian`, Ecef9Tuple, Vector3d, Vector3Tuple or Vector4Tuple). `y` - Y component (`scalar`), required if `x_xyz` if `scalar`, ignored otherwise. `z` - Z component (`scalar`), like `y`. `h` - Height above or below this triaxial's surface (`meter`, same units as this triaxial's axes). `normal` - If `True`, the height is `normal` to the surface, otherwise `radially` to the center of this triaxial (`bool`). `eps` - Tolerance for on-surface test (`scalar`), see method Triaxial.sideOf. `name` - Optional `name=NN` (`str`). Returns: A Vector3Tuple`(x, y, z)`. Raises: `TrialError` - Cartesian `(x, y, z)` not on this triaxial's surface. See Also: Methods Triaxial.forwardCartesian and Triaxial.height4.

### reverseLatLon (self, x_xyz, y=None, z=None, **name) |
Convert cartesian to geodetic lat-, longitude and height. Arguments: `x_xyz` - X component (`scalar`) or a cartesian (`Cartesian`, Ecef9Tuple, Vector3d, Vector3Tuple or Vector4Tuple). `y` - Y component (`scalar`), required if `x_xyz` if `scalar`, ignored otherwise. `z` - Z component (`scalar`), like `y`. `name` - Optional `name=NN` (`str`). Returns: A LatLon3Tuple`(lat, lon, height)` with `lat` and `lon` in `degrees` and (radial) `height` in `meter`, same units as this triaxial's axes. See Also: Methods Triaxial.forwardLatLon and Triaxial.forwardLatLon_ and expressions (4-5).

Property Details

### area Get the surface area (`meter` squared). Get method: area(self) - Get the surface area (`meter` squared). Set method: _fset_error(inst, val) - Throws an `AttributeError`, always. Delete Method: _fdel(inst) - Zap the cached/memoized `property` value. See Also: Surface area.