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

Class Triaxial

  object --+                
           |                
named._Named --+            
               |            
named._NamedBase --+        
                   |        
named._NamedEnumItem --+    
                       |    
               Triaxial_ --+
                           |
                          Triaxial
Known Subclasses:

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 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: __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__

Properties
  area

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

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:
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).

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:

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).

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).

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.

reverseCartesian (self, x_xyz, y=None, z=None, h=0, normal=True, eps=4.440892098500626e-12, **name)

 

"Unproject" a cartesian on 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 the 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.

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.

Property Details

area

Get method:
_fget(inst) - Get and cache/memoize the property value.
Set method:
_fset_error(inst, val) - Throws an AttributeError, always.
Delete Method:
_fdel(inst) - Zap the cached/memoized property value.