Public Member Functions | Private Types | Static Private Member Functions | Private Attributes | List of all members
GeographicLib::JacobiConformal Class Reference

Jacobi's conformal projection of a triaxial ellipsoid. More...

#include <JacobiConformal.hpp>

Public Member Functions

 JacobiConformal (real a, real b, real c)
 
 JacobiConformal (real a, real b, real c, real ab, real bc)
 
Math::real x () const
 
Math::real x (real somg, real comg) const
 
Math::real x (real omg) const
 
Math::real y () const
 
Math::real y (real sbet, real cbet) const
 
Math::real y (real bet) const
 

Private Types

typedef Math::real real
 

Static Private Member Functions

static void norm (real &x, real &y)
 

Private Attributes

real _a
 
real _ab2
 
real _ac2
 
real _b
 
real _bc2
 
real _c
 
EllipticFunction _ex
 
EllipticFunction _ey
 

Detailed Description

Jacobi's conformal projection of a triaxial ellipsoid.

NOTE: This is just sample code. It is not part of GeographicLib itself.

This is a conformal projection of the ellipsoid to a plane in which the grid lines are straight; see Jacobi, Vorlesungen über Dynamik, §28. The constructor takes the semi-axes of the ellipsoid (which must be in order). Member functions map the ellipsoidal coordinates ω and β separately to x and y. Jacobi's coordinates have been multiplied by (a2c2)1/2 / (2b) so that the customary results are returned in the cases of a sphere or an ellipsoid of revolution.

The ellipsoid is oriented so that the large principal ellipse, $Z=0$, is the equator, $\beta=0$, while the small principal ellipse, $Y=0$, is the prime meridian, $\omega=0$. The four umbilic points, $\left|\omega\right| = \left|\beta\right| = \frac12\pi$, lie on middle principal ellipse in the plane $X=0$.

For more information on this projection, see jacobi.

Definition at line 41 of file JacobiConformal.hpp.

Member Typedef Documentation

◆ real

Definition at line 42 of file JacobiConformal.hpp.

Constructor & Destructor Documentation

◆ JacobiConformal() [1/2]

GeographicLib::JacobiConformal::JacobiConformal ( real  a,
real  b,
real  c 
)
inline

Constructor for a trixial ellipsoid with semi-axes.

Parameters
[in]athe largest semi-axis.
[in]bthe middle semi-axis.
[in]cthe smallest semi-axis.

The semi-axes must satisfy abc > 0 and a > c. This form of the constructor cannot be used to specify a sphere (use the next constructor).

Definition at line 59 of file JacobiConformal.hpp.

◆ JacobiConformal() [2/2]

GeographicLib::JacobiConformal::JacobiConformal ( real  a,
real  b,
real  c,
real  ab,
real  bc 
)
inline

Alternate constructor for a triaxial ellipsoid.

Parameters
[in]athe largest semi-axis.
[in]bthe middle semi-axis.
[in]cthe smallest semi-axis.
[in]abthe relative magnitude of ab.
[in]bcthe relative magnitude of bc.

This form can be used to specify a sphere. The semi-axes must satisfy ab ≥ c > 0. The ratio ab : bc must equal (ab) : (bc) with ab ≥ 0, bc ≥ 0, and ab + bc > 0.

Definition at line 89 of file JacobiConformal.hpp.

Member Function Documentation

◆ norm()

static void GeographicLib::JacobiConformal::norm ( real x,
real y 
)
inlinestaticprivate

Definition at line 45 of file JacobiConformal.hpp.

◆ x() [1/3]

Math::real GeographicLib::JacobiConformal::x ( ) const
inline
Returns
the quadrant length in the x direction.

Definition at line 110 of file JacobiConformal.hpp.

◆ x() [2/3]

Math::real GeographicLib::JacobiConformal::x ( real  somg,
real  comg 
) const
inline

The x projection.

Parameters
[in]somgsin(ω).
[in]comgcos(ω).
Returns
x.

Definition at line 118 of file JacobiConformal.hpp.

◆ x() [3/3]

Math::real GeographicLib::JacobiConformal::x ( real  omg) const
inline

The x projection.

Parameters
[in]omgω (in degrees).
Returns
x (in degrees).

ω must be in (−180°, 180°].

Definition at line 131 of file JacobiConformal.hpp.

◆ y() [1/3]

Math::real GeographicLib::JacobiConformal::y ( ) const
inline
Returns
the quadrant length in the y direction.

Definition at line 139 of file JacobiConformal.hpp.

◆ y() [2/3]

Math::real GeographicLib::JacobiConformal::y ( real  sbet,
real  cbet 
) const
inline

The y projection.

Parameters
[in]sbetsin(β).
[in]cbetcos(β).
Returns
y.

Definition at line 147 of file JacobiConformal.hpp.

◆ y() [3/3]

Math::real GeographicLib::JacobiConformal::y ( real  bet) const
inline

The y projection.

Parameters
[in]betβ (in degrees).
Returns
y (in degrees).

β must be in (−180°, 180°].

Definition at line 160 of file JacobiConformal.hpp.

Member Data Documentation

◆ _a

real GeographicLib::JacobiConformal::_a
private

Definition at line 43 of file JacobiConformal.hpp.

◆ _ab2

real GeographicLib::JacobiConformal::_ab2
private

Definition at line 43 of file JacobiConformal.hpp.

◆ _ac2

real GeographicLib::JacobiConformal::_ac2
private

Definition at line 43 of file JacobiConformal.hpp.

◆ _b

real GeographicLib::JacobiConformal::_b
private

Definition at line 43 of file JacobiConformal.hpp.

◆ _bc2

real GeographicLib::JacobiConformal::_bc2
private

Definition at line 43 of file JacobiConformal.hpp.

◆ _c

real GeographicLib::JacobiConformal::_c
private

Definition at line 43 of file JacobiConformal.hpp.

◆ _ex

EllipticFunction GeographicLib::JacobiConformal::_ex
private

Definition at line 44 of file JacobiConformal.hpp.

◆ _ey

EllipticFunction GeographicLib::JacobiConformal::_ey
private

Definition at line 44 of file JacobiConformal.hpp.


The documentation for this class was generated from the following file:


gtsam
Author(s):
autogenerated on Tue Jul 4 2023 02:46:12