Home | Trees | Indices | Help |
|
---|
|
A pure Python version of Karney's Exact Transverse
Mercator
(ETM) projection.
Classes Etm,
ETMError and
ExactTransverseMercator, transcoded from Karney's
C++ class TransverseMercatorExact (abbreviated as
TMExact
below).
Class ExactTransverseMercator provides Exact Transverse
Mercator
projections while instances of class Etm represent ETM
(easting, nothing)
locations.
Following is a copy of Karney's TransverseMercatorExact.hpp file
Header
.
Copyright (C) Charles Karney (2008-2021) and licensed under the MIT/X11 License. For more information, see the GeographicLib documentation.
The method entails using the Thompson Transverse Mercator as an intermediate
projection. The projections from the intermediate coordinates to
phi, lam
and x, y
are given by elliptic
functions. The inverse of these projections are found by Newton's method
with a suitable starting guess.
The relevant section of L.P. Lee's paper Conformal Projections Based On Jacobian Elliptic Functions in part V, pp 67-101. The C++ implementation and notation closely follow Lee, with the following exceptions:
Lee here Description x/a xi Northing (unit Earth) y/a eta Easting (unit Earth) s/a sigma xi + i * eta y x Easting x y Northing k e Eccentricity k^2 mu Elliptic function parameter k'^2 mv Elliptic function complementary parameter m k Scale zeta zeta Complex longitude = Mercator = chi in paper s sigma Complex GK = zeta in paper
Minor alterations have been made in some of Lee's expressions in an
attempt to control round-off. For example, atanh(sin(phi))
is replaced by asinh(tan(phi))
which maintains accuracy near
phi = pi/2
. Such changes are noted in the code.
Version: 22.04.27
Classes | |
EasNorExact4Tuple 4-Tuple (easting, northing, convergence, scale) in
meter , meter , degrees and
scalar .
|
|
ETMError Exact Transverse Mercator (ETM) parse, projection or other Etm issue. |
|
Etm Exact Transverse Mercator (ETM) coordinate, a sub-class of Utm, a Universal Transverse Mercator (UTM) coordinate using the ExactTransverseMercator projection for highest accuracy. |
|
ExactTransverseMercator A Python version of Karney's TransverseMercatorExact C++ class, a numerically exact transverse Mercator projection, here referred to as TMExact .
|
|
LatLonExact4Tuple 4-Tuple (lat, lon, convergence, scale) in
degrees180 , degrees180 ,
degrees and scalar .
|
Functions | |||
|
|||
|
Variables | |
__all__ = _ALL_LAZY.etm
|
Function Details |
Parse a string representing a UTM coordinate, consisting of
Example: >>> u = parseETM5('31 N 448251 5411932') >>> u.toRepr() # [Z:31, H:N, E:448251, N:5411932] >>> u = parseETM5('31 N 448251.8 5411932.7') >>> u.toStr() # 31 N 448252 5411933 |
Convert a lat-/longitude point to an ETM coordinate.
|
Home | Trees | Indices | Help |
|
---|
Generated by Epydoc 3.0.1 on Wed May 4 16:33:49 2022 | http://epydoc.sourceforge.net |