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

Class Triaxial

      object --+                    
               |                    
    named._Named --+                
                   |                
    named._NamedBase --+            
                       |            
    named._NamedEnumItem --+        
                           |        
bases._UnOrderedTriaxialBase --+    
                               |    
      bases._OrderedTriaxialBase --+
                                   |
                                  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, Triaxial3, Conformal or Conformal3.
 
forwardBetaOmega(self, beta, omega, height=0, **unit_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 this triaxial's surface.
 
forwardCartesian(self, x_xyz, y=None, z=None, normal=True, **eps_name)
Project any cartesian to a cartesian on this triaxial's surface.
 
forwardLatLon(self, lat, lon, height=0, **unit_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, height=0, normal=True, eps=4.440892098500626e-12, **name)
"Unproject" a cartesian off this triaxial's surface.
 
reverseLatLon(self, x_xyz, y=None, z=None, **name)
Convert cartesian to geodetic lat-, longitude and height.

Inherited from bases._UnOrderedTriaxialBase: __str__, area_p, hartzell4, height4, normal3d, normal4, sideOf, toBiaxial, 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

Inherited from bases._OrderedTriaxialBase: area

Inherited from bases._UnOrderedTriaxialBase: a, a2, b, b2, c, c2, 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, Triaxial3, Conformal or Conformal3.

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, **unit_name)

 

Convert ellipsoidal lat- beta, longitude omega and height to cartesian.

Arguments:
  • beta - Ellipsoidal latitude (Ang or unit).
  • omega - Ellipsoidal longitude (Ang or unit).
  • height - Height above or below the triaxial's surface (meter, same units as this triaxial's semi-axes.
  • unit_name - Optional name=NN (str) and scalar unit=Radians (or Degrees).
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 this 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=True, **eps_name)

 

Project any cartesian to a cartesian on 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 is scalar, ignored otherwise.
  • z - Z component (scalar), like y.
  • normal - If True, the projection is perpendicular to the surface, otherwise radial to the center of this triaxial (bool).
  • eps_name - Root finder tolerance eps=EPS and optional name="height4" (str).
Returns:
A Vector4Tuple(x, y, z, h).

See Also: Method Triaxial.reverseCartesian to reverse the projection and function height4 for more details.

forwardLatLon (self, lat, lon, height=0, **unit_name)

 

Convert geodetic lat-, longitude and height to cartesian.

Arguments:
  • lat - Geodetic latitude (Ang or unit).
  • lon - Geodetic longitude (Ang or unit).
  • height - Height above the ellipsoid (meter, same units as this triaxial's semi-axes).
  • unit_name - Optional scalar unit=Degrees and 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 semi-axes).
  • 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 is 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 semi-axes.

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

 

"Unproject" a cartesian 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 is scalar, ignored otherwise.
  • z - Z component (scalar), like y.
  • height - Height above or below this triaxial's surface (meter, same units as this triaxial's semi-axes).
  • normal - If True, height is perpendicular to the surface, otherwise radial 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_xyz or (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 is 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 semi-axes.