pygeodesy 24.5.24__py2.py3-none-any.whl → 24.6.9__py2.py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {PyGeodesy-24.5.24.dist-info → PyGeodesy-24.6.9.dist-info}/METADATA +6 -5
- PyGeodesy-24.6.9.dist-info/RECORD +116 -0
- pygeodesy/__init__.py +4 -4
- pygeodesy/auxilats/__init__.py +1 -1
- pygeodesy/auxilats/__main__.py +2 -2
- pygeodesy/auxilats/auxAngle.py +4 -4
- pygeodesy/basics.py +39 -5
- pygeodesy/booleans.py +54 -67
- pygeodesy/cartesianBase.py +138 -147
- pygeodesy/constants.py +3 -3
- pygeodesy/deprecated/functions.py +9 -3
- pygeodesy/ecef.py +67 -72
- pygeodesy/ellipsoidalBase.py +18 -56
- pygeodesy/ellipsoidalGeodSolve.py +2 -2
- pygeodesy/ellipsoidalKarney.py +3 -3
- pygeodesy/ellipsoidalNvector.py +7 -7
- pygeodesy/ellipsoids.py +6 -5
- pygeodesy/errors.py +20 -10
- pygeodesy/etm.py +16 -21
- pygeodesy/fmath.py +9 -20
- pygeodesy/formy.py +60 -74
- pygeodesy/frechet.py +13 -14
- pygeodesy/fsums.py +60 -26
- pygeodesy/geodesicx/__init__.py +1 -1
- pygeodesy/geodesicx/__main__.py +2 -2
- pygeodesy/geodesicx/gx.py +3 -5
- pygeodesy/geodsolve.py +24 -26
- pygeodesy/geohash.py +27 -40
- pygeodesy/geoids.py +1 -1
- pygeodesy/hausdorff.py +17 -18
- pygeodesy/heights.py +17 -30
- pygeodesy/internals.py +15 -14
- pygeodesy/interns.py +3 -9
- pygeodesy/iters.py +2 -2
- pygeodesy/karney.py +8 -7
- pygeodesy/latlonBase.py +189 -176
- pygeodesy/lazily.py +92 -56
- pygeodesy/lcc.py +2 -2
- pygeodesy/ltp.py +93 -55
- pygeodesy/ltpTuples.py +304 -240
- pygeodesy/mgrs.py +51 -24
- pygeodesy/named.py +159 -136
- pygeodesy/namedTuples.py +43 -14
- pygeodesy/nvectorBase.py +20 -23
- pygeodesy/osgr.py +40 -48
- pygeodesy/points.py +11 -11
- pygeodesy/props.py +29 -16
- pygeodesy/rhumb/aux_.py +13 -15
- pygeodesy/rhumb/bases.py +12 -5
- pygeodesy/rhumb/ekx.py +24 -18
- pygeodesy/rhumb/solve.py +20 -70
- pygeodesy/simplify.py +16 -16
- pygeodesy/solveBase.py +35 -32
- pygeodesy/sphericalBase.py +33 -31
- pygeodesy/sphericalTrigonometry.py +17 -17
- pygeodesy/streprs.py +6 -4
- pygeodesy/trf.py +11 -9
- pygeodesy/triaxials.py +71 -50
- pygeodesy/units.py +40 -65
- pygeodesy/unitsBase.py +2 -2
- pygeodesy/ups.py +66 -70
- pygeodesy/utily.py +7 -6
- pygeodesy/utm.py +152 -156
- pygeodesy/utmups.py +38 -38
- pygeodesy/utmupsBase.py +102 -106
- pygeodesy/vector3d.py +34 -36
- pygeodesy/vector3dBase.py +12 -9
- pygeodesy/webmercator.py +43 -51
- PyGeodesy-24.5.24.dist-info/RECORD +0 -116
- {PyGeodesy-24.5.24.dist-info → PyGeodesy-24.6.9.dist-info}/WHEEL +0 -0
- {PyGeodesy-24.5.24.dist-info → PyGeodesy-24.6.9.dist-info}/top_level.txt +0 -0
pygeodesy/webmercator.py
CHANGED
|
@@ -22,11 +22,11 @@ from pygeodesy.basics import _splituple, _xinstanceof
|
|
|
22
22
|
from pygeodesy.constants import PI_2, R_MA, _2_0
|
|
23
23
|
from pygeodesy.datums import Datum, _spherical_datum
|
|
24
24
|
from pygeodesy.dms import clipDegrees, parseDMS2
|
|
25
|
-
from pygeodesy.errors import _parseX, _ValueError, _xattr, _xkwds
|
|
25
|
+
from pygeodesy.errors import _parseX, _ValueError, _xattr, _xkwds, _xkwds_pop2
|
|
26
26
|
from pygeodesy.interns import NN, _COMMASPACE_, _datum_, _earth_, _easting_, \
|
|
27
27
|
_northing_, _radius_, _SPACE_, _x_, _y_
|
|
28
28
|
# from pygeodesy.lazily import _ALL_LAZY from .named
|
|
29
|
-
from pygeodesy.named import _NamedBase, _NamedTuple, _ALL_LAZY
|
|
29
|
+
from pygeodesy.named import _name2__, _NamedBase, _NamedTuple, _ALL_LAZY
|
|
30
30
|
from pygeodesy.namedTuples import LatLon2Tuple, LatLonDatum3Tuple, PhiLam2Tuple
|
|
31
31
|
from pygeodesy.props import deprecated_method, Property_RO
|
|
32
32
|
from pygeodesy.streprs import Fmt, strs, _xzipairs
|
|
@@ -36,7 +36,7 @@ from pygeodesy.utily import degrees90, degrees180
|
|
|
36
36
|
from math import atan, atanh, exp, radians, sin, tanh
|
|
37
37
|
|
|
38
38
|
__all__ = _ALL_LAZY.webmercator
|
|
39
|
-
__version__ = '24.
|
|
39
|
+
__version__ = '24.05.31'
|
|
40
40
|
|
|
41
41
|
# _FalseEasting = 0 # false Easting (C{meter})
|
|
42
42
|
# _FalseNorthing = 0 # false Northing (C{meter})
|
|
@@ -66,32 +66,30 @@ class Wm(_NamedBase):
|
|
|
66
66
|
_x = 0 # Easting (C{meter})
|
|
67
67
|
_y = 0 # Northing (C{meter})
|
|
68
68
|
|
|
69
|
-
def __init__(self, x, y, earth=R_MA,
|
|
69
|
+
def __init__(self, x, y, earth=R_MA, **name_radius):
|
|
70
70
|
'''New L{Wm} Web Mercator (WM) coordinate.
|
|
71
71
|
|
|
72
72
|
@arg x: Easting from central meridian (C{meter}).
|
|
73
73
|
@arg y: Northing from equator (C{meter}).
|
|
74
|
-
@kwarg earth: Earth radius (C{meter}), datum or
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
@kwarg radius: DEPRECATED, use keyword argument B{C{earth}}.
|
|
74
|
+
@kwarg earth: Earth radius (C{meter}), datum or ellipsoid (L{Datum},
|
|
75
|
+
L{a_f2Tuple}, L{Ellipsoid} or L{Ellipsoid2}).
|
|
76
|
+
@kwarg name_radius: Optional C{B{name}=NN} (C{str}) and DEPRECATED
|
|
77
|
+
keyword argument C{B{radius}=earth}, use B{C{earth}}.
|
|
79
78
|
|
|
80
|
-
@note: WM is strictly defined for spherical and WGS84
|
|
81
|
-
|
|
79
|
+
@note: WM is strictly defined for spherical and WGS84 ellipsoidal
|
|
80
|
+
earth models only.
|
|
82
81
|
|
|
83
82
|
@raise WebMercatorError: Invalid B{C{x}}, B{C{y}} or B{C{radius}}.
|
|
84
83
|
'''
|
|
85
84
|
self._x = Easting( x=x, Error=WebMercatorError)
|
|
86
85
|
self._y = Northing(y=y, Error=WebMercatorError)
|
|
87
86
|
|
|
88
|
-
R =
|
|
89
|
-
if R not in Wm._earths:
|
|
90
|
-
self._datum = _datum(R, _radius_ if radius else _earth_)
|
|
91
|
-
self._radius = self.datum.ellipsoid.a
|
|
92
|
-
|
|
87
|
+
R, name = _xkwds_pop2(name_radius, radius=earth)
|
|
93
88
|
if name:
|
|
94
89
|
self.name = name
|
|
90
|
+
if R not in Wm._earths:
|
|
91
|
+
self._datum = _datum(R, _radius_ if _radius_ in name_radius else _earth_)
|
|
92
|
+
self._radius = self.datum.ellipsoid.a
|
|
95
93
|
|
|
96
94
|
@Property_RO
|
|
97
95
|
def datum(self):
|
|
@@ -143,20 +141,18 @@ class Wm(_NamedBase):
|
|
|
143
141
|
|
|
144
142
|
return LatLon2Tuple(degrees90(y), degrees180(x), name=self.name)
|
|
145
143
|
|
|
146
|
-
def parse(self, strWM, name
|
|
144
|
+
def parse(self, strWM, **name):
|
|
147
145
|
'''Parse a string to a similar L{Wm} instance.
|
|
148
146
|
|
|
149
|
-
@arg strWM: The WM coordinate (C{str}), see
|
|
150
|
-
|
|
151
|
-
@kwarg name: Optional instance name (C{str}),
|
|
152
|
-
overriding this name.
|
|
147
|
+
@arg strWM: The WM coordinate (C{str}), see function L{parseWM}.
|
|
148
|
+
@kwarg name: Optional C{B{name}=NN} (C{str}), overriding this name.
|
|
153
149
|
|
|
154
150
|
@return: The similar instance (L{Wm}).
|
|
155
151
|
|
|
156
152
|
@raise WebMercatorError: Invalid B{C{strWM}}.
|
|
157
153
|
'''
|
|
158
154
|
return parseWM(strWM, radius=self.radius, Wm=self.classof,
|
|
159
|
-
|
|
155
|
+
name=self._name__(name))
|
|
160
156
|
|
|
161
157
|
@deprecated_method
|
|
162
158
|
def parseWM(self, strWM, name=NN): # PYCHOK no cover
|
|
@@ -189,16 +185,14 @@ class Wm(_NamedBase):
|
|
|
189
185
|
@kwarg LatLon: Ellipsoidal or sphperical C{LatLon} class to
|
|
190
186
|
return the geodetic point (C{LatLon}) or C{None}.
|
|
191
187
|
@kwarg datum: Optional, datum (C{Datum}) overriding this WM's.
|
|
192
|
-
@kwarg LatLon_kwds: Optional, additional B{C{LatLon}}
|
|
193
|
-
|
|
194
|
-
C{B{LatLon} is None}.
|
|
188
|
+
@kwarg LatLon_kwds: Optional, additional B{C{LatLon}} keyword
|
|
189
|
+
arguments, ignored if C{B{LatLon} is None}.
|
|
195
190
|
|
|
196
|
-
@return: This WM coordinate as B{C{LatLon}} or if
|
|
197
|
-
|
|
191
|
+
@return: This WM coordinate as B{C{LatLon}} or if C{B{LatLon}
|
|
192
|
+
is None} a L{LatLonDatum3Tuple}.
|
|
198
193
|
|
|
199
|
-
@raise TypeError: If B{C{
|
|
200
|
-
|
|
201
|
-
invalid.
|
|
194
|
+
@raise TypeError: If B{C{datum}} is invalid or if B{C{LatLon}}
|
|
195
|
+
and B{C{datum}} are incompatible.
|
|
202
196
|
'''
|
|
203
197
|
d = datum or self.datum
|
|
204
198
|
_xinstanceof(Datum, datum=d)
|
|
@@ -278,7 +272,7 @@ def _datum(earth, name=_datum_):
|
|
|
278
272
|
raise WebMercatorError(name, earth, cause=x)
|
|
279
273
|
|
|
280
274
|
|
|
281
|
-
def parseWM(strWM, radius=R_MA, Wm=Wm, name
|
|
275
|
+
def parseWM(strWM, radius=R_MA, Wm=Wm, **name):
|
|
282
276
|
'''Parse a string C{"e n [r]"} representing a WM coordinate,
|
|
283
277
|
consisting of easting, northing and an optional radius.
|
|
284
278
|
|
|
@@ -287,11 +281,10 @@ def parseWM(strWM, radius=R_MA, Wm=Wm, name=NN):
|
|
|
287
281
|
case B{C{strWM}} doesn't include C{r}.
|
|
288
282
|
@kwarg Wm: Optional class to return the WM coordinate (L{Wm})
|
|
289
283
|
or C{None}.
|
|
290
|
-
@kwarg name: Optional name (C{str}).
|
|
284
|
+
@kwarg name: Optional C{B{name}=NN} (C{str}).
|
|
291
285
|
|
|
292
|
-
@return: The WM coordinate (B{C{Wm}}) or
|
|
293
|
-
L{EasNorRadius3Tuple}C{(easting, northing, radius)}
|
|
294
|
-
if B{C{Wm}} is C{None}.
|
|
286
|
+
@return: The WM coordinate (B{C{Wm}}) or if B{C{Wm}} is C{None}
|
|
287
|
+
an L{EasNorRadius3Tuple}C{(easting, northing, radius)}.
|
|
295
288
|
|
|
296
289
|
@raise WebMercatorError: Invalid B{C{strWM}}.
|
|
297
290
|
'''
|
|
@@ -304,14 +297,14 @@ def parseWM(strWM, radius=R_MA, Wm=Wm, name=NN):
|
|
|
304
297
|
raise ValueError
|
|
305
298
|
x, y, R = map(float, w)
|
|
306
299
|
|
|
307
|
-
return EasNorRadius3Tuple(x, y, R, name
|
|
308
|
-
Wm(x, y, earth=R, name
|
|
300
|
+
return EasNorRadius3Tuple(x, y, R, **name) if Wm is None else \
|
|
301
|
+
Wm(x, y, earth=R, **name)
|
|
309
302
|
|
|
310
303
|
return _parseX(_WM, strWM, radius, Wm, name,
|
|
311
304
|
strWM=strWM, Error=WebMercatorError)
|
|
312
305
|
|
|
313
306
|
|
|
314
|
-
def toWm(latlon, lon=None, earth=R_MA, Wm=Wm,
|
|
307
|
+
def toWm(latlon, lon=None, earth=R_MA, Wm=Wm, **name_Wm_kwds_radius):
|
|
315
308
|
'''Convert a lat-/longitude point to a WM coordinate.
|
|
316
309
|
|
|
317
310
|
@arg latlon: Latitude (C{degrees}) or an (ellipsoidal or
|
|
@@ -323,31 +316,30 @@ def toWm(latlon, lon=None, earth=R_MA, Wm=Wm, name=NN, **Wm_kwds):
|
|
|
323
316
|
datum if present.
|
|
324
317
|
@kwarg Wm: Optional class to return the WM coordinate (L{Wm})
|
|
325
318
|
or C{None}.
|
|
326
|
-
@kwarg
|
|
327
|
-
|
|
328
|
-
|
|
319
|
+
@kwarg name_Wm_kwds_radius: Optional C{B{name}=NN} (C{str}),
|
|
320
|
+
optional, additional B{C{Wm}} keyword arguments,
|
|
321
|
+
ignored if C{B{Wm} is None} and DEPRECATED keyword
|
|
322
|
+
argument C{B{radius}=earth}, use B{C{earth}}.
|
|
329
323
|
|
|
330
|
-
@return: The WM coordinate (B{C{Wm}}) or if B{C{Wm}} is C{None}
|
|
331
|
-
|
|
324
|
+
@return: The WM coordinate (B{C{Wm}}) or if B{C{Wm}} is C{None} an
|
|
325
|
+
L{EasNorRadius3Tuple}C{(easting, northing, radius)}.
|
|
332
326
|
|
|
333
327
|
@raise ValueError: If B{C{lon}} value is missing, if B{C{latlon}} is not
|
|
334
328
|
scalar, if B{C{latlon}} is beyond the valid WM range
|
|
335
329
|
and L{pygeodesy.rangerrors} is set to C{True} or if
|
|
336
330
|
B{C{earth}} is invalid.
|
|
337
331
|
'''
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
else
|
|
341
|
-
d = _datum(earth, _earth_)
|
|
332
|
+
name, kwds = _name2__(name_Wm_kwds_radius)
|
|
333
|
+
R, kwds = _xkwds_pop2(kwds, radius=earth)
|
|
334
|
+
d = _datum(R, _radius_ if _radius_ in name_Wm_kwds_radius else _earth_)
|
|
342
335
|
try:
|
|
343
336
|
y, x = latlon.lat, latlon.lon
|
|
344
337
|
y = clipDegrees(y, _LatLimit)
|
|
345
338
|
d = _xattr(latlon, datum=d)
|
|
346
|
-
n =
|
|
339
|
+
n = latlon._name__(name)
|
|
347
340
|
except AttributeError:
|
|
348
341
|
y, x = parseDMS2(latlon, lon, clipLat=_LatLimit)
|
|
349
|
-
n =
|
|
350
|
-
|
|
342
|
+
n = name
|
|
351
343
|
E = d.ellipsoid
|
|
352
344
|
R = E.a
|
|
353
345
|
s = sin(radians(y))
|
|
@@ -357,7 +349,7 @@ def toWm(latlon, lon=None, earth=R_MA, Wm=Wm, name=NN, **Wm_kwds):
|
|
|
357
349
|
y *= R
|
|
358
350
|
x = R * radians(x)
|
|
359
351
|
r = EasNorRadius3Tuple(x, y, R, name=n) if Wm is None else \
|
|
360
|
-
Wm(x, y, **_xkwds(
|
|
352
|
+
Wm(x, y, **_xkwds(kwds, earth=d, name=n))
|
|
361
353
|
return r
|
|
362
354
|
|
|
363
355
|
# **) MIT License
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
pygeodesy/LICENSE,sha256=YfgAiyxOwY6P9Kkb1_5XN81nueTLrpb3Ffkv3EuPgFU,1144
|
|
2
|
-
pygeodesy/__init__.py,sha256=dxRGIMc_KFg9rWL9IHUZhVmCD3d_3a7DJpfSsyRS0is,41050
|
|
3
|
-
pygeodesy/__main__.py,sha256=UmTd6Qw20g_pgnQjdaHePm-xuOEBi1tUNRLO0eL0-rU,4593
|
|
4
|
-
pygeodesy/albers.py,sha256=2t8EjmoFWmkdTb4DUHMlECkwTPDS1wpNf92WD_UWXds,31081
|
|
5
|
-
pygeodesy/azimuthal.py,sha256=RQdZbHoLlHSamhnJ4GMrrRU6UrYmTpa1yK59nYB-A4o,50252
|
|
6
|
-
pygeodesy/basics.py,sha256=QE3Z3JC-BOAyaj_k6pxqwUpVLzkxJx0Ed1Dcjie8lbg,28241
|
|
7
|
-
pygeodesy/booleans.py,sha256=_OMqrm3R8vHHWo3heglKhUCKWdG8HzHmHLGKRNMF0nY,74141
|
|
8
|
-
pygeodesy/cartesianBase.py,sha256=P3EUMYKad9HxNSQQJTbPu4QehQu5HDxqOo9-xYsTdp4,47366
|
|
9
|
-
pygeodesy/clipy.py,sha256=3ysIEWQ89HjvLnSlZm0nZAt9EN5AQxIs1sLLM8yF9zM,27675
|
|
10
|
-
pygeodesy/constants.py,sha256=-KhClvNhehL7UCnqPgZyEnS3cSyYf7EBDRF0Vgmcgks,19190
|
|
11
|
-
pygeodesy/css.py,sha256=RXlLh76tVDFClVh7L1U3FFrLZvjBPFASDf3vq8dHecE,25778
|
|
12
|
-
pygeodesy/datums.py,sha256=GYbtvPyzDChHYgnNleBqsM-MNwLNQqrO2_MMV4Z9kmI,34006
|
|
13
|
-
pygeodesy/dms.py,sha256=VujWxk1L2Kp6OMfnu0XPI-j8bnyJ33sFmtB9_MbHqSU,44455
|
|
14
|
-
pygeodesy/ecef.py,sha256=U_vxQKD1HXB-O10Q_9tZ4EiD9SdFYuG__5lqvrhE_0M,59795
|
|
15
|
-
pygeodesy/elevations.py,sha256=1qZM2w0rDF7jHunydpTEmdLwOwF81KUL9L6RALJC7K4,10807
|
|
16
|
-
pygeodesy/ellipsoidalBase.py,sha256=VTzRrHlfZ-VXAEUczQjDNMDbTN9kVYBgCMuOos021Dk,56710
|
|
17
|
-
pygeodesy/ellipsoidalBaseDI.py,sha256=lPUPP5lVsCzI5RIukxmJ5MH6j2Mb7mdvftQ0tsvsW6g,38585
|
|
18
|
-
pygeodesy/ellipsoidalExact.py,sha256=a_2C6S6hGRumavy5giRoC9QAhnjqpujiXyu92od6nKo,16951
|
|
19
|
-
pygeodesy/ellipsoidalGeodSolve.py,sha256=xfNcb70AuPbIiJUqhisIfg6pCQBqXyQffBNuESEGCfU,16833
|
|
20
|
-
pygeodesy/ellipsoidalKarney.py,sha256=FoOsfNf96oHuGa9k4AB42y_UUBuOkh4xMW7PFGF63SA,19246
|
|
21
|
-
pygeodesy/ellipsoidalNvector.py,sha256=JuxCUqUtot4e8587Q84Npc1_SdahywTYsybRSMTRtSc,30265
|
|
22
|
-
pygeodesy/ellipsoidalVincenty.py,sha256=Uk93B8GFcMnWiwKUOA84TlLwbBlvzVnsAXAx0cU7cn4,26004
|
|
23
|
-
pygeodesy/ellipsoids.py,sha256=I-vlTW3hqNK-Joqo8q3f1KxY-Y3yD4mVxo7TBWSGxYw,120212
|
|
24
|
-
pygeodesy/elliptic.py,sha256=-80MbZvRPk-TeA_ggkfXhjuPv07MzsB4HxNF7gbdhB4,42501
|
|
25
|
-
pygeodesy/epsg.py,sha256=oWHX_QVChE5roktAyXUmPmX49XHiryYmXTHxQzrAprE,8222
|
|
26
|
-
pygeodesy/errors.py,sha256=A8eOE3ddsH9kFP6O60cA5ZuQMjBWpmbRDdWKM2Onvng,28187
|
|
27
|
-
pygeodesy/etm.py,sha256=w0_8tF6p54K2dBAhsOW9YZTTWHJY7BnFnqh34PKm8PU,45075
|
|
28
|
-
pygeodesy/fmath.py,sha256=71kngkiWgwFoLbJ6JKb2dJ0ZBmTFd_mdsGZkU_m-8Ts,34103
|
|
29
|
-
pygeodesy/formy.py,sha256=CmQlz2I1KNXeIU73T9zzHNvTnenMFvfnZVCJCxhSwZg,75693
|
|
30
|
-
pygeodesy/frechet.py,sha256=MwOC2VvOL4lNcvpF-kUaN5FYNp6xudYP5dyBtSwKz3Y,34338
|
|
31
|
-
pygeodesy/fstats.py,sha256=4eIhzSCMnn-2nVP3Q-5cCWCI-rvH0CE-zkk9hp3Pvn8,28642
|
|
32
|
-
pygeodesy/fsums.py,sha256=VdvK7Z01MNRcknf8hWujvD08WMCgJ98OdUCCbT9Xfqk,79434
|
|
33
|
-
pygeodesy/gars.py,sha256=gVnLQIEofyf_dA8dhpLrmhtIxGhBHZVRw8PbWgYUnnY,11400
|
|
34
|
-
pygeodesy/geodesicw.py,sha256=PwUO5jCGExhMt6cKkQwVnPTHMMVadkTrd6pV4UWZYNY,27064
|
|
35
|
-
pygeodesy/geodsolve.py,sha256=gRwdmjYe2oslt2z2vBnMlh_FURqGm9ai7t4XPrnjCxQ,22019
|
|
36
|
-
pygeodesy/geohash.py,sha256=plBNMHbiQa9E8RPq7rgFYoJAl14mhkgnDucGoXD5YHg,32373
|
|
37
|
-
pygeodesy/geoids.py,sha256=25HrOgsCvFnXTjh3ghc1Y1FQKjerPpo_OLlQBNayK_0,80887
|
|
38
|
-
pygeodesy/hausdorff.py,sha256=3mC7QbRZawpqFaguTieHMCaDzVt22PNhJ0s9ZPgQA1k,34712
|
|
39
|
-
pygeodesy/heights.py,sha256=ZqRy20ZUVatumPWWS-j7Vvq3BA7HaRWMOd6BvbMhHm8,43575
|
|
40
|
-
pygeodesy/internals.py,sha256=iTOhd3Lb96JuaeR9BFDv0ixGRktn7O_HpHrp5W_1LTY,19344
|
|
41
|
-
pygeodesy/interns.py,sha256=QoDo_S1qY8IJVqI0pH2jGESLEexEF480PuwWZnTVrRI,23600
|
|
42
|
-
pygeodesy/iters.py,sha256=ML14NjtDpfPRtDJQsUYUtJZ81HH4NPFrCjecxwkcIuM,20309
|
|
43
|
-
pygeodesy/karney.py,sha256=7d0VroQiobcTS5ccaWg99rGRaMUorqRJTaCBaSscKI4,35084
|
|
44
|
-
pygeodesy/ktm.py,sha256=itQElJegrfhpAuMujAWFTcyuMSeKIgSyw5qkkHFs7vE,27519
|
|
45
|
-
pygeodesy/latlonBase.py,sha256=DglIfu916vtMV8-wEUs4GrXmk698-j3dkSud8FOBB6o,77762
|
|
46
|
-
pygeodesy/lazily.py,sha256=FjvgzWyXiM9gJNzTCVWi_RxonR0OrBJOQiFFl0n1Cx4,45478
|
|
47
|
-
pygeodesy/lcc.py,sha256=6vGht5JCN_BYYzbU2YCK6jz3PFcVymvY-RK2Uflt7ZE,25745
|
|
48
|
-
pygeodesy/ltp.py,sha256=QcDoeOXBQLto2vXTWhKUFKre7bfGN4lZLcgLsZLKwMY,49258
|
|
49
|
-
pygeodesy/ltpTuples.py,sha256=bZjcmj4Ug42d2gjofhfzr2Min_A8M62vZOOSINY1K9s,55771
|
|
50
|
-
pygeodesy/mgrs.py,sha256=zddMOnUIs8VSk0c3muTaljTl7OViCgX6JB28gWPdmVM,29029
|
|
51
|
-
pygeodesy/named.py,sha256=SOlbmB6Ned9TacOSTwchi8hcOmvCNAy6A2M_DMhDusM,51204
|
|
52
|
-
pygeodesy/namedTuples.py,sha256=N8fyc6OMdXNHgOk_tK2zhuWwBq6oB-QcAY-PG9xIgWk,27535
|
|
53
|
-
pygeodesy/nvectorBase.py,sha256=Z6tA3XthUu990UOUv0o8l5gjnmE7e2Cqkob69spoXYE,28831
|
|
54
|
-
pygeodesy/osgr.py,sha256=s_-21bYhXUv37thzgIQjGmMmMdT46RlecOixHRufW4o,31044
|
|
55
|
-
pygeodesy/points.py,sha256=9VfKDo9rt935WW61k4PpXSKzSx02demxhLVpf9DRcNk,64412
|
|
56
|
-
pygeodesy/props.py,sha256=o6x5XDCtq3nW17dZtQnNsqlc6FVpf2xjy6JKbdZsbBw,21493
|
|
57
|
-
pygeodesy/resections.py,sha256=nkfBxYrsEdyq2JqAbPrRWKplJBzFkIXLvEZGB4gPu_A,43550
|
|
58
|
-
pygeodesy/simplify.py,sha256=FT3AzXiFjFfvwJ-X2q8iA9cQOUVdBT1vD_BIskM3gK8,25223
|
|
59
|
-
pygeodesy/solveBase.py,sha256=W7qF_dW24Dd9aS2wh0nD9Lj8BgOSImsACxR1-iNRuyQ,16709
|
|
60
|
-
pygeodesy/sphericalBase.py,sha256=sH2WwmY_RL0STyr1OhtCDKvGhO0Ks7o3V-MHLddpiHQ,31944
|
|
61
|
-
pygeodesy/sphericalNvector.py,sha256=TBs_nid_DTcox7bBegh_Djv4zZRGRY4mH6dd1xIHGms,56963
|
|
62
|
-
pygeodesy/sphericalTrigonometry.py,sha256=p9sDwyHH441pdPktUE6zrRtGQpwNO8F4ey07QtUW7z0,64209
|
|
63
|
-
pygeodesy/streprs.py,sha256=AZzil7Encfb1E7NG7tNHHivuayKQ-LZJJTMVumUhsEQ,23993
|
|
64
|
-
pygeodesy/trf.py,sha256=r5d_fFHQiPH8HPnBdzLhCju2rKNRCEDZ8UwIBWujR2E,118904
|
|
65
|
-
pygeodesy/triaxials.py,sha256=5WKymGpixPjsgol4ifSl5pH-f7bTfZsMrmcYFuZBtwY,62040
|
|
66
|
-
pygeodesy/units.py,sha256=DIllydnoz4rfw3ST91D_6-K_QGFiCqNcYvf6B_mUJMs,38827
|
|
67
|
-
pygeodesy/unitsBase.py,sha256=FA4DuXUb88YYsDS3aIkd7BGvj70JATMeuBV_efshUx0,13544
|
|
68
|
-
pygeodesy/ups.py,sha256=Rw4cO7Q20w-y7DKEHiuX7BkansDZnm8uvQRApFJ-USo,23287
|
|
69
|
-
pygeodesy/utily.py,sha256=AOEHXi7H5QsTmgxcp0qOGC2qvIdqS01Mfu0Y8m3Bp6w,36141
|
|
70
|
-
pygeodesy/utm.py,sha256=p1MH5qm5Fi9nWEfY7ww-y1O4FcuQuuR08mNlHp7MLKk,31135
|
|
71
|
-
pygeodesy/utmups.py,sha256=u2hlWSnmZKwR-ApgKw16R9p75sW_yaqQAmbcBUE8Zfg,13007
|
|
72
|
-
pygeodesy/utmupsBase.py,sha256=x9LHKi44aYB473ukVvxt1rRJ68MOAQGWiiOhzRskiio,18974
|
|
73
|
-
pygeodesy/vector2d.py,sha256=zJq5PB777_mFJpKD-rt_T0Vm4SNbVwF7pc3KxX8uCT8,34994
|
|
74
|
-
pygeodesy/vector3d.py,sha256=danoz3QA90EJjqr2dmLPCYP5UG0m_pgiyNuNBW0aNJ8,45065
|
|
75
|
-
pygeodesy/vector3dBase.py,sha256=GhEq2oFfLoF57cDy6lvsB0b-dgTneMcrtDSyIiGr4mY,35630
|
|
76
|
-
pygeodesy/webmercator.py,sha256=1IXiAHBXTm5kMCp5gEI67oBJeRXD7BiPVI7bcRRX1U4,14918
|
|
77
|
-
pygeodesy/wgrs.py,sha256=AKUrYRCC67lOeJ6vUDAiGb_mY6R3ZwflXpOaP3wauOg,14774
|
|
78
|
-
pygeodesy/auxilats/_CX_4.py,sha256=U41njj8Pu8cHMGuoUUVA20QIvRJAq-VGCnyoKJl0Ylo,8662
|
|
79
|
-
pygeodesy/auxilats/_CX_6.py,sha256=x4hrHxunjqqkEsZbVW1dyn3R5mR8EWYOuX77RzDEyh4,14856
|
|
80
|
-
pygeodesy/auxilats/_CX_8.py,sha256=t-OO48t4cCOsOgMi1FoyPw2DQqybVZFsgQMqAYP-jKY,25304
|
|
81
|
-
pygeodesy/auxilats/__init__.py,sha256=xLIJ2uAhO-p_NDywrEi0tJxJ7r7jw3yG5B2CfSjNKJw,2881
|
|
82
|
-
pygeodesy/auxilats/__main__.py,sha256=BsNxHMo-VqXL0-kFTrpMUz5SFUO_K4udQLemXgvTxLE,2896
|
|
83
|
-
pygeodesy/auxilats/auxAngle.py,sha256=ybW0FMGaf69V5FYgVoqZENU-5b43FsmCPSYXcOu2fT8,16740
|
|
84
|
-
pygeodesy/auxilats/auxDLat.py,sha256=U3BHF6AkW5--nrwH9whL5wZVIZLH_keRLfUz6c6KBx4,10950
|
|
85
|
-
pygeodesy/auxilats/auxDST.py,sha256=bdNEh3TdABWH7qW6ngZx5SnzDM3B5rtPLvYhvCnFsKc,10497
|
|
86
|
-
pygeodesy/auxilats/auxLat.py,sha256=GUpK5_rcL8IHjC209dhIibYYBJudFU0Yk7JD-KUApbc,32529
|
|
87
|
-
pygeodesy/auxilats/auxily.py,sha256=ZiCFedYcr32O6TWQ_dcnwMrc9TgogyuhNSbR77WMDpg,8240
|
|
88
|
-
pygeodesy/deprecated/__init__.py,sha256=ZRGqgwSdvtKSYZdw09-LPuGa_i0jMHWKIwrPG3r1hHs,2815
|
|
89
|
-
pygeodesy/deprecated/bases.py,sha256=nxUtxscAg5cb7HEzTSmPJFafLc9Ad2SL5ovwkYaU5z8,1655
|
|
90
|
-
pygeodesy/deprecated/classes.py,sha256=PXgss-2kEu3bzaxvSeVZJGdcRqsdi_6_aRqsESyUQKQ,11662
|
|
91
|
-
pygeodesy/deprecated/consterns.py,sha256=W-rQiw443_zCFEUzjCGykGND-i5P_ghEIyJUSGg7-Nc,1908
|
|
92
|
-
pygeodesy/deprecated/datum.py,sha256=KfuMA64LYGMj1voW2uai2RGcugtWdpvlOL6UHJvpTeQ,1875
|
|
93
|
-
pygeodesy/deprecated/functions.py,sha256=-Ckor43KBiCDa7rbwY5kHvrs5xwuixTlw1TZpNSBgrU,13647
|
|
94
|
-
pygeodesy/deprecated/nvector.py,sha256=_dZf84RdmPr7e7i8Yi683R-8Mqn0ipTqIsDhNl29hGo,2117
|
|
95
|
-
pygeodesy/deprecated/rhumbBase.py,sha256=d7YKW--dnRpobB2CSvhFsntWF0B5-HYJqID2pv5lD5k,1375
|
|
96
|
-
pygeodesy/deprecated/rhumbaux.py,sha256=n29xazYMbVG4MJkLjAGu8B88bbcFF5xnvuj9xSxjfIk,1428
|
|
97
|
-
pygeodesy/deprecated/rhumbsolve.py,sha256=QprjRfo5T1_C4ovaa1cffAcmNczzkhGIfmybAup9a9w,1431
|
|
98
|
-
pygeodesy/deprecated/rhumbx.py,sha256=OS0p_meaoVrpZe5UhK6qZljjlrGpL0pCHWw8gofw7ks,1425
|
|
99
|
-
pygeodesy/geodesicx/_C4_24.py,sha256=kS4XMR9m7iBs01V8K0Oz9qTYmjN-icIQGpc_8iwVhig,90750
|
|
100
|
-
pygeodesy/geodesicx/_C4_27.py,sha256=bPbj2Ckrn9WJglm3SNTXyMkULNwANM0tCQ-LKxP1L58,134258
|
|
101
|
-
pygeodesy/geodesicx/_C4_30.py,sha256=QZO8p971ztJwDGLOaJYgIhklztz9GlqbtS-xRP_E7o4,201964
|
|
102
|
-
pygeodesy/geodesicx/__init__.py,sha256=b5pOZbSBjN9WVP7fOMSBzTIbx1H0omHMXzOgf6rAgvs,2446
|
|
103
|
-
pygeodesy/geodesicx/__main__.py,sha256=FVlmJft__Utk30zYwCbvrJpmAFi_jmyigzbm4An3Wws,3167
|
|
104
|
-
pygeodesy/geodesicx/gx.py,sha256=reyK3UrooZmXTrwPcU36kO0R_ffZ5cMjPZoQ1qWHaO0,61729
|
|
105
|
-
pygeodesy/geodesicx/gxarea.py,sha256=-Kwe6spe2MSQbeLFDd6UN2NOi4JOjYhHAEzonOU3u4A,19409
|
|
106
|
-
pygeodesy/geodesicx/gxbases.py,sha256=nSQpDPuRQFkkzvjOaalBTHOQCYT1fhSOb5uy-5NvvSA,5215
|
|
107
|
-
pygeodesy/geodesicx/gxline.py,sha256=GP7BXfpsePLZy0SLLiIO6ytWKFpBLuPsOaL2Z_-45iU,27373
|
|
108
|
-
pygeodesy/rhumb/__init__.py,sha256=70qKVuNKkddfqMSxZ9c0VCZM1w0_Ka_nBWwtpfxxh2o,2207
|
|
109
|
-
pygeodesy/rhumb/aux_.py,sha256=W4HkgoHAQz_aWaysfsmOA5010nCGvBfUs2Q-bymnHYU,16660
|
|
110
|
-
pygeodesy/rhumb/bases.py,sha256=ZK-t5BHf4LyGypSfH-yaIHol0N9uWioMzUYzp0GI03M,53882
|
|
111
|
-
pygeodesy/rhumb/ekx.py,sha256=lF3tZ-ZY9fPJV8y1kgHW-7EOZCyb3gJr-kR-jj5Fbf8,23871
|
|
112
|
-
pygeodesy/rhumb/solve.py,sha256=nih_QmAjOQNb5PNNXJGWkAZuGrXDTXtlxRKPZj8ZA7c,27795
|
|
113
|
-
PyGeodesy-24.5.24.dist-info/METADATA,sha256=b7AJM6eBNwRiyOCN0orAkHqGorz9KpaFu18NxBuTs48,19364
|
|
114
|
-
PyGeodesy-24.5.24.dist-info/WHEEL,sha256=DZajD4pwLWue70CAfc7YaxT1wLUciNBvN_TTcvXpltE,110
|
|
115
|
-
PyGeodesy-24.5.24.dist-info/top_level.txt,sha256=cEQPatCXzKZqrivpULC5V5fuy9_V_bAwaP_gUGid7pQ,10
|
|
116
|
-
PyGeodesy-24.5.24.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|