pygeodesy 25.11.5__py2.py3-none-any.whl → 25.12.31__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/__init__.py +46 -25
- pygeodesy/__main__.py +1 -1
- pygeodesy/albers.py +1 -1
- pygeodesy/angles.py +960 -0
- pygeodesy/auxilats/_CX_4.py +1 -1
- pygeodesy/auxilats/_CX_6.py +1 -1
- pygeodesy/auxilats/_CX_8.py +1 -1
- pygeodesy/auxilats/_CX_Rs.py +1 -1
- pygeodesy/auxilats/__init__.py +2 -2
- pygeodesy/auxilats/__main__.py +1 -1
- pygeodesy/auxilats/auxAngle.py +7 -8
- pygeodesy/auxilats/auxDLat.py +1 -1
- pygeodesy/auxilats/auxDST.py +1 -1
- pygeodesy/auxilats/auxLat.py +1 -1
- pygeodesy/auxilats/auxily.py +1 -1
- pygeodesy/azimuthal.py +6 -5
- pygeodesy/basics.py +14 -10
- pygeodesy/booleans.py +1 -1
- pygeodesy/cartesianBase.py +7 -7
- pygeodesy/clipy.py +1 -1
- pygeodesy/constants.py +29 -24
- pygeodesy/css.py +1 -1
- pygeodesy/datums.py +1 -1
- pygeodesy/deprecated/__init__.py +1 -1
- pygeodesy/deprecated/bases.py +1 -1
- pygeodesy/deprecated/classes.py +14 -7
- pygeodesy/deprecated/consterns.py +1 -1
- pygeodesy/deprecated/datum.py +1 -1
- pygeodesy/deprecated/functions.py +1 -1
- pygeodesy/deprecated/nvector.py +1 -1
- pygeodesy/deprecated/rhumbBase.py +1 -1
- pygeodesy/deprecated/rhumbaux.py +1 -1
- pygeodesy/deprecated/rhumbsolve.py +1 -1
- pygeodesy/deprecated/rhumbx.py +1 -1
- pygeodesy/dms.py +1 -1
- pygeodesy/ecef.py +1 -1
- pygeodesy/ecefLocals.py +1 -1
- pygeodesy/elevations.py +1 -1
- pygeodesy/ellipsoidalBase.py +1 -1
- pygeodesy/ellipsoidalBaseDI.py +1 -1
- pygeodesy/ellipsoidalExact.py +1 -1
- pygeodesy/ellipsoidalGeodSolve.py +1 -1
- pygeodesy/ellipsoidalKarney.py +1 -1
- pygeodesy/ellipsoidalNvector.py +1 -1
- pygeodesy/ellipsoidalVincenty.py +1 -1
- pygeodesy/ellipsoids.py +30 -17
- pygeodesy/elliptic.py +1 -1
- pygeodesy/epsg.py +1 -1
- pygeodesy/errors.py +8 -4
- pygeodesy/etm.py +1 -1
- pygeodesy/fmath.py +19 -14
- pygeodesy/formy.py +251 -10
- pygeodesy/frechet.py +1 -1
- pygeodesy/fstats.py +1 -1
- pygeodesy/fsums.py +41 -29
- pygeodesy/gars.py +1 -1
- pygeodesy/geod3solve.py +489 -0
- pygeodesy/geodesici.py +9 -8
- pygeodesy/geodesicw.py +1 -1
- pygeodesy/geodesicx/_C4_24.py +1 -1
- pygeodesy/geodesicx/_C4_27.py +1 -1
- pygeodesy/geodesicx/_C4_30.py +1 -1
- pygeodesy/geodesicx/__init__.py +2 -2
- pygeodesy/geodesicx/__main__.py +1 -1
- pygeodesy/geodesicx/gx.py +1 -1
- pygeodesy/geodesicx/gxarea.py +54 -24
- pygeodesy/geodesicx/gxbases.py +1 -1
- pygeodesy/geodesicx/gxline.py +1 -1
- pygeodesy/geodsolve.py +73 -104
- pygeodesy/geohash.py +1 -1
- pygeodesy/geoids.py +1 -1
- pygeodesy/hausdorff.py +1 -1
- pygeodesy/heights.py +1 -1
- pygeodesy/internals.py +1 -1
- pygeodesy/interns.py +3 -3
- pygeodesy/iters.py +1 -1
- pygeodesy/karney.py +152 -151
- pygeodesy/ktm.py +1 -1
- pygeodesy/latlonBase.py +1 -1
- pygeodesy/lazily.py +24 -13
- pygeodesy/lcc.py +1 -1
- pygeodesy/ltp.py +1 -1
- pygeodesy/ltpTuples.py +1 -1
- pygeodesy/mgrs.py +3 -3
- pygeodesy/named.py +15 -10
- pygeodesy/namedTuples.py +1 -1
- pygeodesy/nvectorBase.py +1 -1
- pygeodesy/osgr.py +1 -1
- pygeodesy/points.py +1 -1
- pygeodesy/props.py +6 -4
- pygeodesy/resections.py +1 -1
- pygeodesy/rhumb/__init__.py +8 -6
- pygeodesy/rhumb/aux_.py +1 -1
- pygeodesy/rhumb/bases.py +1 -1
- pygeodesy/rhumb/ekx.py +1 -1
- pygeodesy/rhumb/solve.py +91 -84
- pygeodesy/simplify.py +1 -1
- pygeodesy/solveBase.py +72 -49
- pygeodesy/sphericalBase.py +1 -1
- pygeodesy/sphericalNvector.py +1 -1
- pygeodesy/sphericalTrigonometry.py +1 -1
- pygeodesy/streprs.py +6 -4
- pygeodesy/trf.py +2 -4
- pygeodesy/triaxials/__init__.py +70 -0
- pygeodesy/triaxials/bases.py +966 -0
- pygeodesy/triaxials/conformal3.py +617 -0
- pygeodesy/triaxials/triaxial3.py +968 -0
- pygeodesy/{triaxials.py → triaxials/triaxial5.py} +353 -781
- pygeodesy/units.py +1 -1
- pygeodesy/unitsBase.py +1 -1
- pygeodesy/ups.py +2 -3
- pygeodesy/utily.py +17 -14
- pygeodesy/utm.py +1 -1
- pygeodesy/utmups.py +1 -1
- pygeodesy/utmupsBase.py +1 -1
- pygeodesy/vector2d.py +1 -1
- pygeodesy/vector3d.py +1 -1
- pygeodesy/vector3dBase.py +1 -1
- pygeodesy/webmercator.py +1 -1
- pygeodesy/wgrs.py +1 -1
- {pygeodesy-25.11.5.dist-info → pygeodesy-25.12.31.dist-info}/METADATA +28 -21
- pygeodesy-25.12.31.dist-info/RECORD +125 -0
- pygeodesy-25.11.5.dist-info/RECORD +0 -119
- {pygeodesy-25.11.5.dist-info → pygeodesy-25.12.31.dist-info}/WHEEL +0 -0
- {pygeodesy-25.11.5.dist-info → pygeodesy-25.12.31.dist-info}/top_level.txt +0 -0
pygeodesy/units.py
CHANGED
|
@@ -877,7 +877,7 @@ __all__ += _ALL_DOCS(_NamedUnit)
|
|
|
877
877
|
|
|
878
878
|
# **) MIT License
|
|
879
879
|
#
|
|
880
|
-
# Copyright (C) 2016-
|
|
880
|
+
# Copyright (C) 2016-2026 -- mrJean1 at Gmail -- All Rights Reserved.
|
|
881
881
|
#
|
|
882
882
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
|
883
883
|
# copy of this software and associated documentation files (the "Software"),
|
pygeodesy/unitsBase.py
CHANGED
|
@@ -350,7 +350,7 @@ __all__ += _ALL_DOCS(_NamedUnit)
|
|
|
350
350
|
|
|
351
351
|
# **) MIT License
|
|
352
352
|
#
|
|
353
|
-
# Copyright (C) 2016-
|
|
353
|
+
# Copyright (C) 2016-2026 -- mrJean1 at Gmail -- All Rights Reserved.
|
|
354
354
|
#
|
|
355
355
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
|
356
356
|
# copy of this software and associated documentation files (the "Software"),
|
pygeodesy/ups.py
CHANGED
|
@@ -22,7 +22,7 @@ other than C{"std"}, zones C{'A'} and C{'Y'} are used for negative, west longitu
|
|
|
22
22
|
'''
|
|
23
23
|
|
|
24
24
|
# from pygeodesy.basics import neg as _neg # from .dms
|
|
25
|
-
from pygeodesy.constants import EPS, EPS0, _EPSmin as _Tol90, \
|
|
25
|
+
from pygeodesy.constants import EPS, EPS0, _EPSmin as _Tol90, _K0_UPS, \
|
|
26
26
|
isnear90, _0_0, _0_5, _1_0, _2_0
|
|
27
27
|
from pygeodesy.datums import _ellipsoidal_datum, _WGS84
|
|
28
28
|
from pygeodesy.dms import degDMS, _neg, parseDMS2
|
|
@@ -53,7 +53,6 @@ __version__ = '25.04.14'
|
|
|
53
53
|
|
|
54
54
|
_BZ_UPS = _envPYGEODESY('UPS_POLES', _std_) == _std_
|
|
55
55
|
_Falsing = Meter(2000e3) # false easting and northing (C{meter})
|
|
56
|
-
_K0_UPS = Float(_K0_UPS= 0.994) # scale factor at central meridian
|
|
57
56
|
_K1_UPS = Float(_K1_UPS=_1_0) # rescale point scale factor
|
|
58
57
|
|
|
59
58
|
|
|
@@ -509,7 +508,7 @@ def upsZoneBand5(lat, lon, strict=True, **name):
|
|
|
509
508
|
|
|
510
509
|
# **) MIT License
|
|
511
510
|
#
|
|
512
|
-
# Copyright (C) 2016-
|
|
511
|
+
# Copyright (C) 2016-2026 -- mrJean1 at Gmail -- All Rights Reserved.
|
|
513
512
|
#
|
|
514
513
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
|
515
514
|
# copy of this software and associated documentation files (the "Software"),
|
pygeodesy/utily.py
CHANGED
|
@@ -16,7 +16,7 @@ from pygeodesy.constants import EPS, EPS0, NAN, PI, PI2, PI_2, PI_4, PI_6, R_M,
|
|
|
16
16
|
_M_KM, _M_NM, _M_SM, _0_0, _0_5, _1_0, _N_1_0, \
|
|
17
17
|
_10_0, _90_0, _180_0, _360_0, _copysign_0_0, \
|
|
18
18
|
_copysignINF, _float, _isfinite, isnan, isnear0, \
|
|
19
|
-
_over_1, _umod_360, _umod_PI2
|
|
19
|
+
_over_1, _umod_360, _umod_PI2, OVERFLOW
|
|
20
20
|
from pygeodesy.errors import _ValueError, _xkwds, _xkwds_get
|
|
21
21
|
from pygeodesy.internals import _Enum, _passargs, typename
|
|
22
22
|
from pygeodesy.interns import _edge_, _radians_, _semi_circular_, _SPACE_
|
|
@@ -28,7 +28,7 @@ from math import acos, asin, asinh, atan2 as _atan2, cos, degrees, fabs, \
|
|
|
28
28
|
radians, sin, sinh, tan as _tan # pow
|
|
29
29
|
|
|
30
30
|
__all__ = _ALL_LAZY.utily
|
|
31
|
-
__version__ = '25.
|
|
31
|
+
__version__ = '25.11.09'
|
|
32
32
|
|
|
33
33
|
# sqrt(3) <https://WikiPedia.org/wiki/Square_root_of_3>
|
|
34
34
|
_COS_30, _SIN_30 = 0.86602540378443864676, _0_5 # sqrt(3) / 2
|
|
@@ -815,8 +815,8 @@ def SinCos2(x, unit=Radians):
|
|
|
815
815
|
|
|
816
816
|
@return: 2-Tuple (C{sin(B{x})}, C{cos(B{x})}).
|
|
817
817
|
'''
|
|
818
|
-
return sincos2d(x) if unit is Degrees or isinstanceof(x, Degrees, Degrees_) else (
|
|
819
|
-
# sincos2(x) if unit is Radians or isinstanceof(x, Radians, Radians_) else
|
|
818
|
+
return sincos2d(x) if unit is Degrees or unit is degrees or isinstanceof(x, Degrees, Degrees_) else (
|
|
819
|
+
# sincos2(x) if unit is Radians or unit is radians or isinstanceof(x, Radians, Radians_) else
|
|
820
820
|
sincos2(Radians(x))) # assume C{radians}
|
|
821
821
|
|
|
822
822
|
|
|
@@ -997,13 +997,14 @@ def tan_(*rads, **raiser_kwds):
|
|
|
997
997
|
yield _nonfinite(tan_, r, **raiser_kwds)
|
|
998
998
|
|
|
999
999
|
|
|
1000
|
-
def tand(deg, **
|
|
1000
|
+
def tand(deg, **raiser_clamp_kwds):
|
|
1001
1001
|
'''Return the C{tangent} of an angle in C{degrees}.
|
|
1002
1002
|
|
|
1003
1003
|
@arg deg: Angle (C{degrees}).
|
|
1004
|
-
@kwarg
|
|
1005
|
-
ValueErrors and
|
|
1006
|
-
ValueError keyword
|
|
1004
|
+
@kwarg raiser_clamp_kwds: Use C{B{raiser}=False} to avoid
|
|
1005
|
+
ValueErrors, C{B{clamp}=}L{OVERFLOW} and
|
|
1006
|
+
optional, additional ValueError keyword
|
|
1007
|
+
argments.
|
|
1007
1008
|
|
|
1008
1009
|
@return: C{tan(B{deg})}.
|
|
1009
1010
|
|
|
@@ -1012,10 +1013,10 @@ def tand(deg, **raiser_kwds):
|
|
|
1012
1013
|
try:
|
|
1013
1014
|
return _tanu(*sincos2d(deg))
|
|
1014
1015
|
except ZeroDivisionError:
|
|
1015
|
-
return _nonfinite(tand, deg, **
|
|
1016
|
+
return _nonfinite(tand, deg, **raiser_clamp_kwds)
|
|
1016
1017
|
|
|
1017
1018
|
|
|
1018
|
-
def tand_(*degs, **
|
|
1019
|
+
def tand_(*degs, **raiser_clamp_kwds):
|
|
1019
1020
|
'''Yield the C{tangent} of angle(s) in C{degrees}.
|
|
1020
1021
|
|
|
1021
1022
|
@arg degs: One or more angles (each in C{degrees}).
|
|
@@ -1026,9 +1027,9 @@ def tand_(*degs, **raiser_kwds):
|
|
|
1026
1027
|
'''
|
|
1027
1028
|
try:
|
|
1028
1029
|
for d in degs:
|
|
1029
|
-
yield _tanu(*sincos2d(d))
|
|
1030
|
+
yield _tanu(*sincos2d(d), **raiser_clamp_kwds)
|
|
1030
1031
|
except ZeroDivisionError:
|
|
1031
|
-
yield _nonfinite(tand_, d, **
|
|
1032
|
+
yield _nonfinite(tand_, d, **raiser_clamp_kwds)
|
|
1032
1033
|
|
|
1033
1034
|
|
|
1034
1035
|
def tanPI_2_2(rad):
|
|
@@ -1042,7 +1043,7 @@ def tanPI_2_2(rad):
|
|
|
1042
1043
|
NAN if isnan(rad) else _copysign(_90_0, rad))
|
|
1043
1044
|
|
|
1044
1045
|
|
|
1045
|
-
def _tanu(s, c):
|
|
1046
|
+
def _tanu(s, c, clamp=OVERFLOW, **unused):
|
|
1046
1047
|
'''(INTERNAL) Helper for functions C{_cotu}, C{sincostan3},
|
|
1047
1048
|
C{sincostan3d}, C{tan}, C{tan_}, C{tand} and C{tand_}.
|
|
1048
1049
|
'''
|
|
@@ -1052,6 +1053,8 @@ def _tanu(s, c):
|
|
|
1052
1053
|
raise ZeroDivisionError()
|
|
1053
1054
|
else:
|
|
1054
1055
|
t = _over_1(s, c)
|
|
1056
|
+
if clamp:
|
|
1057
|
+
t = min(clamp, max(t, -clamp))
|
|
1055
1058
|
return t
|
|
1056
1059
|
|
|
1057
1060
|
|
|
@@ -1384,7 +1387,7 @@ def yard2m(yards):
|
|
|
1384
1387
|
|
|
1385
1388
|
# **) MIT License
|
|
1386
1389
|
#
|
|
1387
|
-
# Copyright (C) 2016-
|
|
1390
|
+
# Copyright (C) 2016-2026 -- mrJean1 at Gmail -- All Rights Reserved.
|
|
1388
1391
|
#
|
|
1389
1392
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
|
1390
1393
|
# copy of this software and associated documentation files (the "Software"),
|
pygeodesy/utm.py
CHANGED
|
@@ -733,7 +733,7 @@ def utmZoneBand5(lat, lon, cmoff=False, **name):
|
|
|
733
733
|
|
|
734
734
|
# **) MIT License
|
|
735
735
|
#
|
|
736
|
-
# Copyright (C) 2016-
|
|
736
|
+
# Copyright (C) 2016-2026 -- mrJean1 at Gmail -- All Rights Reserved.
|
|
737
737
|
#
|
|
738
738
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
|
739
739
|
# copy of this software and associated documentation files (the "Software"),
|
pygeodesy/utmups.py
CHANGED
|
@@ -294,7 +294,7 @@ def utmupsZoneBand5(lat, lon, cmoff=False, **name):
|
|
|
294
294
|
|
|
295
295
|
# **) MIT License
|
|
296
296
|
#
|
|
297
|
-
# Copyright (C) 2016-
|
|
297
|
+
# Copyright (C) 2016-2026 -- mrJean1 at Gmail -- All Rights Reserved.
|
|
298
298
|
#
|
|
299
299
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
|
300
300
|
# copy of this software and associated documentation files (the "Software"),
|
pygeodesy/utmupsBase.py
CHANGED
|
@@ -586,7 +586,7 @@ __all__ += _ALL_DOCS(UtmUpsBase)
|
|
|
586
586
|
|
|
587
587
|
# **) MIT License
|
|
588
588
|
#
|
|
589
|
-
# Copyright (C) 2016-
|
|
589
|
+
# Copyright (C) 2016-2026 -- mrJean1 at Gmail -- All Rights Reserved.
|
|
590
590
|
#
|
|
591
591
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
|
592
592
|
# copy of this software and associated documentation files (the "Software"),
|
pygeodesy/vector2d.py
CHANGED
|
@@ -884,7 +884,7 @@ def _tri5perturbs(eps, r):
|
|
|
884
884
|
|
|
885
885
|
# **) MIT License
|
|
886
886
|
#
|
|
887
|
-
# Copyright (C) 2016-
|
|
887
|
+
# Copyright (C) 2016-2026 -- mrJean1 at Gmail -- All Rights Reserved.
|
|
888
888
|
#
|
|
889
889
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
|
890
890
|
# copy of this software and associated documentation files (the "Software"),
|
pygeodesy/vector3d.py
CHANGED
|
@@ -914,7 +914,7 @@ __all__ += _ALL_DOCS(intersections2, sumOf, Vector3dBase)
|
|
|
914
914
|
|
|
915
915
|
# **) MIT License
|
|
916
916
|
#
|
|
917
|
-
# Copyright (C) 2016-
|
|
917
|
+
# Copyright (C) 2016-2026 -- mrJean1 at Gmail -- All Rights Reserved.
|
|
918
918
|
#
|
|
919
919
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
|
920
920
|
# copy of this software and associated documentation files (the "Software"),
|
pygeodesy/vector3dBase.py
CHANGED
|
@@ -1196,7 +1196,7 @@ __all__ += _ALL_DOCS(Vector3dBase)
|
|
|
1196
1196
|
|
|
1197
1197
|
# **) MIT License
|
|
1198
1198
|
#
|
|
1199
|
-
# Copyright (C) 2016-
|
|
1199
|
+
# Copyright (C) 2016-2026 -- mrJean1 at Gmail -- All Rights Reserved.
|
|
1200
1200
|
#
|
|
1201
1201
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
|
1202
1202
|
# copy of this software and associated documentation files (the "Software"),
|
pygeodesy/webmercator.py
CHANGED
|
@@ -353,7 +353,7 @@ def toWm(latlon, lon=None, earth=R_MA, Wm=Wm, **name_Wm_kwds_radius):
|
|
|
353
353
|
|
|
354
354
|
# **) MIT License
|
|
355
355
|
#
|
|
356
|
-
# Copyright (C) 2016-
|
|
356
|
+
# Copyright (C) 2016-2026 -- mrJean1 at Gmail -- All Rights Reserved.
|
|
357
357
|
#
|
|
358
358
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
|
359
359
|
# copy of this software and associated documentation files (the "Software"),
|
pygeodesy/wgrs.py
CHANGED
|
@@ -425,7 +425,7 @@ __all__ += _ALL_DOCS(decode3, decode5, # functions
|
|
|
425
425
|
|
|
426
426
|
# **) MIT License
|
|
427
427
|
#
|
|
428
|
-
# Copyright (C) 2016-
|
|
428
|
+
# Copyright (C) 2016-2026 -- mrJean1 at Gmail -- All Rights Reserved.
|
|
429
429
|
#
|
|
430
430
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
|
431
431
|
# copy of this software and associated documentation files (the "Software"),
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: pygeodesy
|
|
3
|
-
Version: 25.
|
|
3
|
+
Version: 25.12.31
|
|
4
4
|
Summary: Pure Python geodesy tools
|
|
5
5
|
Home-page: https://GitHub.com/mrJean1/PyGeodesy
|
|
6
6
|
Author: Jean M. Brouwers
|
|
@@ -8,7 +8,7 @@ Author-email: mrJean1@Gmail.com
|
|
|
8
8
|
Maintainer: Jean M. Brouwers
|
|
9
9
|
Maintainer-email: mrJean1@Gmail.com
|
|
10
10
|
License: MIT
|
|
11
|
-
Keywords: AER Albers altitude Andoyer annulus antipode area attitude Authalic auxiliary azimuth azimuthal azimuth-elevation-range bearing bank Barsky Barth beta bi-quadratic boolean cached Cagnoli cartesian Cassini Cassini-Soldner chord circle-intersections circumcenter circumcircle circumradius clip Cohen Cohen-Sutherland Collins composite conformal conformal-sphere conic constants contact-triangle Cook Correia cosines-law coverage curvature cylindrical datum deprecation deficit development discrete distance Douglas earth east-north-up eccentricity ECEF elevation ellipsoid ellipsoidal-latitude-beta ellipsoidal-longitude-omega elliptic ENU EPSG equal-area equidistant equirectangular ETM ETRF Euclidean even-odd-rule ExactTM excess Farrell Farrell-Barth Ferrari-solution Field-Of-View flattening fma fmath footpoint footprint Forster Forster-Hormann-Popa Forsythe FOV fractional Frechet Fréchet frustum Fsum fused-multiply-add GARS geocentric GeoConvert GeodesicExact geodesy geodetic GeodSolve GeodTest geographiclib Geohash geoid geoidHeight GeoidHeights georef Girard gnomonic gons grades gradians Greiner Greiner-Hormann Hartzell Hausdorff Haversine heading hectare height Heikkinen Heron Hodgman horizon Hormann Hubeny IDW incenter incirle infix_@_operator inradius intermediate interpolate intersect intersection intersection3d intersections IntersectTool Inverse-Distance-Weighting Isometric ITRF Jacobi Jacobi-Conformal Jarque-Bera Jekel Karney Krueger Krüger kurtosis Lambert latitude law-of-cosines least-squares Lesh L_Huilier LHuilier Liang Liang-Barsky linearize Line-Of-Sight LocalCartesian local-tangent-plane local-x-y-z longitude LOS loxodrome lstsq LTP lune LV03 LV95 mean memoize memoized Mercator Meeus MGRS nearest NED Niemeyer non-finite normalize Norrdine north-east-down numpy n-vector Nvector oblate omega orthographic orthometric-height OSGB OSGR overlap parallel parallel-of-latitude Parametric path-intersection perimeter Peucker Pierlot pitch plumb Point-Of-View polar Popa POV precision-cubic-root precision-hypotenuse precision-powers precision-running-summation precision-square-root precision-summation prolate Pseudo-Mercator pygeodesy PyInstaller PyPy quartic radical radii radius Ramer Ramer-Douglas-Peucker Rectifying Reduced resect resection Rey-Jer Reumann Reumann-Witkam rho-theta-phi rhumb RhumbSolve running-linear-regression running-statistics running-stats running-summation scipy secant semi-perimeter sexagecimal simplify skewness Snellius Snellius-Pothenot Snyder Soddy Soddy-circles Soldner sphere sphere-intersections spherical-deficit spherical-excess spherical-polar spherical-triangle squared-quartic standard-deviation stereographic Sudano surface-area Sutherland Sutherland-Hodgman tangent-circles Terrestrial-Reference-Frame Thomas Tienstra tilt TMcoords TMExact toise transverse TransverseMercatorExact TRF triangle triangulate triaxial triaxial-ellipsoid trigonometry trilaterate trilaterate-2d trilaterate-3d TwoProduct TwoSum umbilic-point unit unroll UPS UTM UTM/UPS variance velocities Veness Vermeille viewing-frustum Vincenty Visvalingam Visvalingam-Whyatt volume volumetric Web-Mercator Welford WGRS WGS Whyatt Wildberger Witkam winding-number XYZ yaw You zenzi-cubic zenzi-quartic
|
|
11
|
+
Keywords: AER AGM Albers altitude Andoyer annulus antipode area Arithmetic-Geometric-Mean attitude Authalic auxiliary azimuth azimuthal azimuth-elevation-range bearing bank Barsky Barth beta bi-quadratic boolean cached Cagnoli cartesian Cassini Cassini-Soldner chord circle-intersections circumcenter circumcircle circumradius clip Cohen Cohen-Sutherland Collins composite conformal conformal-sphere conic constants contact-triangle Cook Correia cosines-law coverage curvature cylindrical datum deprecation deficit development discrete distance Douglas earth east-north-up eccentricity ECEF elevation ellipsoid ellipsoidal-latitude-beta ellipsoidal-longitude-omega elliptic ENU EPSG equal-area equidistant equirectangular ETM ETRF Euclidean even-odd-rule ExactTM excess Farrell Farrell-Barth Ferrari-solution Field-Of-View flattening fma fmath footpoint footprint Forster Forster-Hormann-Popa Forsythe FOV fractional Frechet Fréchet frustum Fsum fused-multiply-add GARS Gauss-Kummer geocentric GeoConvert GeodesicExact geodesy geodetic GeodSolve Geod3Solve GeodTest geographiclib Geohash geoid geoidHeight GeoidHeights georef Girard gnomonic gons grades gradians Greiner Greiner-Hormann Hartzell Hausdorff Haversine heading hectare height Heikkinen Heron Hodgman horizon Hormann Hubeny IDW incenter incirle infix_@_operator inradius intermediate interpolate intersect intersection intersection3d intersections IntersectTool Inverse-Distance-Weighting Isometric ITRF Jacobi Jacobi-Conformal Jarque-Bera Jekel Karney Krueger Krüger kurtosis Lambert latitude law-of-cosines least-squares Lesh L_Huilier LHuilier Liang Liang-Barsky Linderholm-Segal linearize Line-Of-Sight LocalCartesian local-tangent-plane local-x-y-z longitude LOS loxodrome lstsq LTP lune LV03 LV95 mean memoize memoized Mercator Meeus MGRS nearest NED Niemeyer non-finite normalize Norrdine north-east-down numpy n-vector Nvector oblate omega orthographic orthometric-height OSGB OSGR overlap parallel parallel-of-latitude Parametric path-intersection perimeter Peucker Pierlot pitch plumb Point-Of-View polar Popa POV precision-cubic-root precision-hypotenuse precision-powers precision-running-summation precision-square-root precision-summation prolate Pseudo-Mercator pygeodesy PyInstaller PyPy quartic radical radii radius Ramanujan Ramer Ramer-Douglas-Peucker Rectifying Reduced resect resection Rey-Jer Reumann Reumann-Witkam rho-theta-phi rhumb RhumbSolve running-linear-regression running-statistics running-stats running-summation scipy secant semi-perimeter sexagecimal simplify skewness Snellius Snellius-Pothenot Snyder Soddy Soddy-circles Soldner sphere sphere-intersections spherical-deficit spherical-excess spherical-polar spherical-triangle squared-quartic standard-deviation stereographic Sudano surface-area Sutherland Sutherland-Hodgman tangent-circles Terrestrial-Reference-Frame Thomas Tienstra tilt TMcoords TMExact toise transverse TransverseMercatorExact TRF triangle triangulate triaxial triaxial-ellipsoid trigonometry trilaterate trilaterate-2d trilaterate-3d TwoProduct TwoSum umbilic-point unit unroll UPS UTM UTM/UPS variance velocities Veness Vermeille viewing-frustum Vincenty Visvalingam Visvalingam-Whyatt volume volumetric Web-Mercator Welford WGRS WGS Whyatt Wildberger Witkam winding-number XYZ yaw You zenzi-cubic zenzi-quartic
|
|
12
12
|
Classifier: Development Status :: 5 - Production/Stable
|
|
13
13
|
Classifier: Environment :: Console
|
|
14
14
|
Classifier: Intended Audience :: Developers
|
|
@@ -20,6 +20,7 @@ Classifier: Programming Language :: Python :: 3.11
|
|
|
20
20
|
Classifier: Programming Language :: Python :: 3.12
|
|
21
21
|
Classifier: Programming Language :: Python :: 3.13
|
|
22
22
|
Classifier: Programming Language :: Python :: 3.14
|
|
23
|
+
Classifier: Programming Language :: Python :: 3.15
|
|
23
24
|
Classifier: Topic :: Software Development
|
|
24
25
|
Classifier: Topic :: Scientific/Engineering :: GIS
|
|
25
26
|
|
|
@@ -33,8 +34,8 @@ models using precision exact, elliptic, trigonometric, vector-based, iterative a
|
|
|
33
34
|
methods for geodetic (lat-/longitude), geocentric (ECEF_ cartesian), local (LTP_) and certain
|
|
34
35
|
`triaxial ellipsoidal`_ coordinates.
|
|
35
36
|
|
|
36
|
-
Transcoded in part from `JavaScript originals`_ by *Chris Veness (C) 2005-
|
|
37
|
-
`C++ classes`_ by *Charles F.F. Karney (C) 2008-
|
|
37
|
+
Transcoded in part from `JavaScript originals`_ by *Chris Veness (C) 2005-2025* and from several
|
|
38
|
+
`C++ classes`_ by *Charles F.F. Karney (C) 2008-2025* and published under the same `MIT License`_.
|
|
38
39
|
|
|
39
40
|
There are four modules for ellipsoidal earth models, *ellipsoidalExact*, *-Karney*, *-Vincenty*
|
|
40
41
|
and *-Nvector* and two for spherical ones, *sphericalTrigonometry* and *-Nvector*. Each module
|
|
@@ -101,8 +102,13 @@ Modules ``ellipsoidalGeodSolve`` and ``geodsolve`` and ``azimuthal`` classes ``E
|
|
|
101
102
|
and ``GnomonicGeodSolve`` depend on *Karney*\'s C++ utility GeodSolve_ to be executable and set with
|
|
102
103
|
env variable ``PYGEODESY_GEODSOLVE`` or with property ``Ellipsoid.geodsolve``.
|
|
103
104
|
|
|
105
|
+
Triaxial geodesic classes ``Geodesic3Solve`` and ``GeodesicLine3Solve`` in module ``geod3solve`` need
|
|
106
|
+
*Karney*\'s C++ utility Geod3Solve_ to be executable and set with env variable ``PYGEODESY_GEOD3SOLVE``
|
|
107
|
+
or with property ``Geodesic3Solve.Geod3Solve``.
|
|
108
|
+
|
|
104
109
|
Class ``Intersectool`` in module ``geodesici`` needs *Karney*\'s C++ utility IntersectTool_ to be
|
|
105
|
-
executable and set with env variable ``PYGEODESY_INTERSECTTOOL
|
|
110
|
+
executable and set with env variable ``PYGEODESY_INTERSECTTOOL`` or with property
|
|
111
|
+
``Intersectool.IntersectTool``.
|
|
106
112
|
|
|
107
113
|
To compare ``MGRS`` results from modules ``mgrs`` and ``testMgrs`` with *Karney*\'s C++ utility
|
|
108
114
|
GeoConvert_, the latter must be executable and set with env variable ``PYGEODESY_GEOCONVERT``.
|
|
@@ -120,31 +126,31 @@ test results (on macOS only) and the complete documentation_ generated by Epydoc
|
|
|
120
126
|
Tests
|
|
121
127
|
=====
|
|
122
128
|
|
|
123
|
-
The tests ran with Python 3.14 (with geographiclib_ 2.1), Python 3.13.
|
|
124
|
-
numpy_ 2.3.3, scipy_ 1.16.2, GeoConvert_ 2.
|
|
125
|
-
numpy_ 2.1.0, scipy_ 1.14.1, GeodSolve_ 2.
|
|
126
|
-
geographiclib_ 2.0, numpy_ 1.24.2 and scipy_ 1.10.1) and with
|
|
127
|
-
numpy_ 1.16.6, scipy_ 1.2.2, GeoConvert_ 2.
|
|
128
|
-
all on macOS 26.
|
|
129
|
+
The tests ran with Python 3.14.2 (with geographiclib_ 2.1), Python 3.13.9 (with geographiclib_ 2.1,
|
|
130
|
+
numpy_ 2.3.3, scipy_ 1.16.2, GeoConvert_ 2.7, GeodSolve_ 2.7 and Geod3Solve_ 2.7), Python 3.12.7 (with
|
|
131
|
+
geographiclib_ 2.0, numpy_ 2.1.0, scipy_ 1.14.1, GeodSolve_ 2.7, Geod3Solve_ 2.7, IntersectTool_ 2.7
|
|
132
|
+
and RhumbSolve_ 2.7), Python 3.11.5 (with geographiclib_ 2.0, numpy_ 1.24.2 and scipy_ 1.10.1) and with
|
|
133
|
+
Python 2.7.18 (with geographiclib_ 1.50, numpy_ 1.16.6, scipy_ 1.2.2, GeoConvert_ 2.7, GeodSolve_ 2.7,
|
|
134
|
+
Geod3Solve_ 2.7, IntersectTool_ 2.7 and RhumbSolve_ 2.7), all on macOS 26.2 Tahoe in 64-bit.
|
|
129
135
|
|
|
130
136
|
All tests ran with and without ``lazy import`` for Python 3 and with command line option ``-W default``
|
|
131
137
|
and env variable ``PYGEODESY_WARNINGS=on`` for all Python versions. The results of those tests are
|
|
132
138
|
included in the distribution files.
|
|
133
139
|
|
|
134
|
-
Python 3.14, 3.13.
|
|
140
|
+
Python 3.14.2, 3.13.9, 3.12.7 and 3.11.5 run on Apple M4 Si (``arm64``), *natively*. Python 2.7.18 runs
|
|
135
141
|
on Intel (``x86_64``) or Intel *emulation* (\"``arm64_x86_64``\", see function `pygeodesy.machine`_).
|
|
136
142
|
|
|
137
|
-
Test coverage has been measured with coverage_ 7.10.7 using Python 3.14, 3.13.
|
|
138
|
-
coverage report in HTML and a PDF summary are included in the distribution files.
|
|
143
|
+
Test coverage has been measured with coverage_ 7.10.7 using Python 3.14.2, 3.13.9 and 3.12.7. The
|
|
144
|
+
complete coverage report in HTML and a PDF summary are included in the distribution files.
|
|
139
145
|
|
|
140
|
-
The tests also ran with Python 3.
|
|
141
|
-
Python 3.
|
|
146
|
+
The tests also ran with Python 3.14.2 (and geographiclib_ 2.1) on `Debian 12`_ in 64-bit only and with
|
|
147
|
+
Python 3.13.8 (and geographiclib_ 2.0) on `Windows 2019Server`_ in 64-bit only and with Python 2.7.18
|
|
142
148
|
(and with geographiclib_ 1.52) on `Windows 10`_ in 64- and 32-bit.
|
|
143
149
|
|
|
144
150
|
A single-File and single-Directory application with ``pygeodesy`` has been bundled using PyInstaller_ 3.4
|
|
145
151
|
and 64-bit Python 3.7.4 and 3.7.3 on macOS 10.13.6 High Sierra.
|
|
146
152
|
|
|
147
|
-
Previously, the tests were run with Python 3.13.0-
|
|
153
|
+
Previously, the tests were run with Python 3.13.0-7, 3.12.0-6, 3.11.2-4, 3.10.1-7, 3.9.1, 3.8.7, 3.7.1, 2.7.15,
|
|
148
154
|
PyPy_ 7.3.12 (Python 3.10.12), 7.3.1 (Python 3.6.9) and PyPy_ 7.1.1 (Python 2.7.13) (and geographiclib_ 1.52,
|
|
149
155
|
numpy_ 1.16.3, 1.16.4, 1.16.6, 1.19.0, 1.19.4, 1.19.5 or 1.22.4 and scipy_ 1.2.1, 1.4.1, 1.5.2 or 1.8.1) on
|
|
150
156
|
Ubuntu 16.04, with Python 3.10.0-1, 3.9.0-5, 3.8.0-6, 3.7.2-6, 3.7.0, 3.6.2-5, 3.5.3, 2.7.13-17, 2.7.10
|
|
@@ -160,17 +166,17 @@ Server 2012R2, Windows 10 Pro and 32-bit Python 2.6.6 on Windows XP SP3.
|
|
|
160
166
|
Notes
|
|
161
167
|
=====
|
|
162
168
|
|
|
163
|
-
All Python source code has been statically checked_ with Ruff_ using Python 3.13.
|
|
164
|
-
PyCodeStyle_ (formerly Pep8) and McCabe_ using Python 2.7.18, both in 64-bit on macOS 26.
|
|
169
|
+
All Python source code has been statically checked_ with Ruff_ using Python 3.13.9 and with PyChecker_, PyFlakes_,
|
|
170
|
+
PyCodeStyle_ (formerly Pep8) and McCabe_ using Python 2.7.18, both in 64-bit on macOS 26.2 Tahoe only.
|
|
165
171
|
|
|
166
172
|
For a summary of all *Karney*-based functionality in ``pygeodesy``, see module karney_.
|
|
167
173
|
|
|
168
|
-
*Last updated:
|
|
174
|
+
*Last updated: Dec 31, 2025.*
|
|
169
175
|
|
|
170
176
|
License
|
|
171
177
|
=======
|
|
172
178
|
|
|
173
|
-
**Copyright (C) 2016-
|
|
179
|
+
**Copyright (C) 2016-2026 -\- mrJean1 at Gmail -\- All Rights Reserved.**
|
|
174
180
|
|
|
175
181
|
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
|
|
176
182
|
documentation files (the "Software"), to deal in the Software without restriction, including without limitation
|
|
@@ -224,6 +230,7 @@ DEALINGS IN THE SOFTWARE.
|
|
|
224
230
|
.. _Garefs (GARS): https://WikiPedia.org/wiki/Global_Area_Reference_System
|
|
225
231
|
.. _GeoConvert: https://GeographicLib.SourceForge.io/C++/doc/utilities.html
|
|
226
232
|
.. _GeodSolve: https://GeographicLib.SourceForge.io/C++/doc/utilities.html
|
|
233
|
+
.. _Geod3Solve: https://GeographicLib.SourceForge.io/C++/doc/Geod3Solve.1.html
|
|
227
234
|
.. _geographiclib: https://PyPI.org/project/geographiclib
|
|
228
235
|
.. _GeographicLib.: https://GeographicLib.SourceForge.io/C++/doc/index.html
|
|
229
236
|
.. _Geohashes: https://www.Movable-Type.co.UK/scripts/geohash.html
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
pygeodesy/LICENSE,sha256=YfgAiyxOwY6P9Kkb1_5XN81nueTLrpb3Ffkv3EuPgFU,1144
|
|
2
|
+
pygeodesy/__init__.py,sha256=LJWArNEBwQusGv0qhNBOLJJjlAy-5oQqJ6wgce3p0wE,43782
|
|
3
|
+
pygeodesy/__main__.py,sha256=06sdpwiuTP1hPvKOdzjqhuuDqqpicErwnAYwioeiTNw,5597
|
|
4
|
+
pygeodesy/albers.py,sha256=1Jt-WWcawNw6Dj7wl6hPSLbYiGGZqFMCnRU8gyGvV7o,30908
|
|
5
|
+
pygeodesy/angles.py,sha256=68sNVXU3QKGZnIYyjWFcKhWlBKSmaduO--rjtoM2sqU,29996
|
|
6
|
+
pygeodesy/azimuthal.py,sha256=7JwLHx-mTkwxuSkWmxNPPnPFAu4a0F5X_T_JyL6aEHE,49867
|
|
7
|
+
pygeodesy/basics.py,sha256=bbQs7M1epOl7t8IF2xs5uA46rrdYdobSuiJJ6v5st0s,32988
|
|
8
|
+
pygeodesy/booleans.py,sha256=kEF7rFvQzUaGFdrDzOXo_GFauXmaDTnhd2LNDh69B28,72636
|
|
9
|
+
pygeodesy/cartesianBase.py,sha256=L6y0Mn3x25eLF0Wd6ntOLlyfvGqmIl15Akvs373lXhg,45382
|
|
10
|
+
pygeodesy/clipy.py,sha256=uLTbX6byZa6fi2Kir1WanfW47JSxAkmfngH3vD7TDfw,27481
|
|
11
|
+
pygeodesy/constants.py,sha256=UsVlgLUwfvP-DPP5Fa51T-aJIe5cjLpwt0LVyQwMS70,21425
|
|
12
|
+
pygeodesy/css.py,sha256=Fb_z5nvu5j4To1WgXGPOaEaME71IZW747FdpL4YBczc,25793
|
|
13
|
+
pygeodesy/datums.py,sha256=3uB7cuFdhNNMxKq96J3FjdklwaKOcdshBrGMf1Osbms,34068
|
|
14
|
+
pygeodesy/dms.py,sha256=2jesqmjWy-Pze5VWtgbiyC8CbjeIFbPP1qt2nYriubw,42202
|
|
15
|
+
pygeodesy/ecef.py,sha256=0MSfLlMedBokrrn2YcOyfa2MrJhhKzVemXTHn8Qi4KI,62577
|
|
16
|
+
pygeodesy/ecefLocals.py,sha256=hlx0DUW5n6v2H8SLJvaSEQQj_Sq61bLXpT8PY7SWqe4,7794
|
|
17
|
+
pygeodesy/elevations.py,sha256=Z4jvs_EUv_tKroxxweulRu6XxX9E5h8sbTGUTalRD2I,10879
|
|
18
|
+
pygeodesy/ellipsoidalBase.py,sha256=zb2PQhTWQdba7qJBgcFaQPQhOdSZQwhKGpFuts93API,55711
|
|
19
|
+
pygeodesy/ellipsoidalBaseDI.py,sha256=_2N4zFQN3qEyiD7ah0pzyY0FHKJYQJL6IKsvVhA-w8Y,38544
|
|
20
|
+
pygeodesy/ellipsoidalExact.py,sha256=irv40d_xyDIBgSXswn8op-Wjk-KZUSwVD8xWWGq8wwk,17120
|
|
21
|
+
pygeodesy/ellipsoidalGeodSolve.py,sha256=wuA-veOYC95vcEnbr4zT0ZzDN7s6kSuMRHpd4V1RlEw,17108
|
|
22
|
+
pygeodesy/ellipsoidalKarney.py,sha256=CxPB91CKA0q5E97TOcErTTQdufdB2dT4KF84QZtfnGM,18839
|
|
23
|
+
pygeodesy/ellipsoidalNvector.py,sha256=48N-KtVUn0wi9kXZe12hg0jABWNeaiNXyY__oS-x5I4,30146
|
|
24
|
+
pygeodesy/ellipsoidalVincenty.py,sha256=X4OpMPtoretveNjHlEXKL4ifmAARTRY0yxbIOlR26J8,26273
|
|
25
|
+
pygeodesy/ellipsoids.py,sha256=u4jeDSP9smTzK5Y2PWTa4eGI5dxUdcHxSBL9sVVvzQs,109316
|
|
26
|
+
pygeodesy/elliptic.py,sha256=914gDJmHVu_zlyQJy4tfqTJmq2Buqq5w3Jt-7wrXpEo,45515
|
|
27
|
+
pygeodesy/epsg.py,sha256=wS8Mzzk70Fzry6c0fBA16VVez3ghKG2Dhgpo2eN_Ik8,8220
|
|
28
|
+
pygeodesy/errors.py,sha256=76wVrhxev-n-kBOHv3MicHell3ifA2whUp4SRCrqUx4,32633
|
|
29
|
+
pygeodesy/etm.py,sha256=3pQmpjsrnI0mgLwhkLOCOFq_44bkhHwXExf-Keyky2w,46796
|
|
30
|
+
pygeodesy/fmath.py,sha256=buLhJkanh06PU-CIzdT8V8nLeQdn7D4olI6E124NA6s,37984
|
|
31
|
+
pygeodesy/formy.py,sha256=0PLwO2coxgCIyGDMHM9T4EBqLUAlEYOFhdxYszmUzPU,78285
|
|
32
|
+
pygeodesy/frechet.py,sha256=FySLdZgLb_NXd81AILx4G2C9J6dxwI5uYW1MEHuEocg,35588
|
|
33
|
+
pygeodesy/fstats.py,sha256=EuyC9UrJ5K0IlZqM7h3C8C7tYDrTujqoBp9-V1ICPx0,28348
|
|
34
|
+
pygeodesy/fsums.py,sha256=EmjY74uPwCMxXVC3pOu2F5rqc42rsvXGWPGtvbDaG3c,105304
|
|
35
|
+
pygeodesy/gars.py,sha256=z7yvE6dRAjtXUAB9yakH8duwF2gBKbcjXUIznNnr8_w,11761
|
|
36
|
+
pygeodesy/geod3solve.py,sha256=nWYPBilw5j1T-uWk_cDV7TdBpIVNP5SM2jjUsXn7y8s,21595
|
|
37
|
+
pygeodesy/geodesici.py,sha256=eHkXKDQzeFfJ6lVkGANqnEk5hQR-MkYXQlgXCLzbG3Y,74933
|
|
38
|
+
pygeodesy/geodesicw.py,sha256=bhwSBtHAaNAl487uAgifS42cKvcYTe-8O8M5S44u9_k,30029
|
|
39
|
+
pygeodesy/geodsolve.py,sha256=GqMn4PjXAT7jK0VjxeMv7FgNx-_T_LeAfeMda7wUSqM,25032
|
|
40
|
+
pygeodesy/geohash.py,sha256=LmjvzgrzD0Cj-xPCZNJp3LbVOQ7llaE2sAO0V0SxNOo,40124
|
|
41
|
+
pygeodesy/geoids.py,sha256=Fn3pOCokzQJuEY2UE11Ah5XuiT24WRmmoc3FeNhfpsg,86129
|
|
42
|
+
pygeodesy/hausdorff.py,sha256=_zfkZ4pzUE_6LwFD77RU9NC58aN8imglI7TfapM82Wc,32269
|
|
43
|
+
pygeodesy/heights.py,sha256=T_5ZhtFAskQf-1BHL2Nm5bTYQIMJj-d1UKhW11YPWvs,41011
|
|
44
|
+
pygeodesy/internals.py,sha256=_KTAnSPlLWYBEXaUxiDpE-nN-JbexcN5h_szyJwzgWE,24712
|
|
45
|
+
pygeodesy/interns.py,sha256=h7LupB9eEhwgW8mq3R4VMFI3i-49ObgXAEvV2JJmmpM,23521
|
|
46
|
+
pygeodesy/iters.py,sha256=xH719oFB-0z4jCAHeC6uLqyfWPtpQoSBF6Pgnoz5weQ,20345
|
|
47
|
+
pygeodesy/karney.py,sha256=_HLXxYtoh8eIMfsvsH7f4irb0L1xHljnvgLf7_e3ixc,42115
|
|
48
|
+
pygeodesy/ktm.py,sha256=262-FbXSHpQnlpHKyqzMO4Uuf7DflDINSSSOEmRXyRc,27270
|
|
49
|
+
pygeodesy/latlonBase.py,sha256=as2BBvogFBANmyixQNgVWVfXuBSvcDtb200XzSMKzE4,75317
|
|
50
|
+
pygeodesy/lazily.py,sha256=yfdUlY0H2t-h627-oKijSRNJtilu9J9m4PcLguoL9F8,48640
|
|
51
|
+
pygeodesy/lcc.py,sha256=BXWEHDRgNOzAOM5dVBfpETWVdJ7Me378Wv93n2oR_UI,25785
|
|
52
|
+
pygeodesy/ltp.py,sha256=-dokXawH_nvyjYaQzPQ0pguB0yAlvybnFnokEwLE488,50893
|
|
53
|
+
pygeodesy/ltpTuples.py,sha256=6BcsN1rjshV1w80EtXR14TzDmZLl-YReFJ4UFL-DBt0,59101
|
|
54
|
+
pygeodesy/mgrs.py,sha256=ZUsW0ixGlS0YOuzXFoGj3N0XrI1PbuSVYldZuqKS3g8,29842
|
|
55
|
+
pygeodesy/named.py,sha256=CfOdOZrMTCPWtHju158dJl8Yc8OimWW7i6uZ0LMVFjs,52988
|
|
56
|
+
pygeodesy/namedTuples.py,sha256=mIwqxjSRqmJ7D4_BMYhQkSoAaaP3-rwnToNenu1k3yU,30598
|
|
57
|
+
pygeodesy/nvectorBase.py,sha256=hDLrOOBuxz0n5zNH3nyg5FlElUD2Yusd91PRL7QLooA,29927
|
|
58
|
+
pygeodesy/osgr.py,sha256=afrHMVQ6wrdCaKDXMuhXcDy0MTI-8HKQccSlKGUNwps,30852
|
|
59
|
+
pygeodesy/points.py,sha256=Fcz220qrQqLCI9b442sOb1wR0w12EsE1LDbLFwwXWhA,64497
|
|
60
|
+
pygeodesy/props.py,sha256=90WNv8voJGF_X4zEL_luSmZi3XNzA6gvLDAX9Sv6tCk,24658
|
|
61
|
+
pygeodesy/resections.py,sha256=47twtGa_PQ71QUwReECkRpVFyuRSuYhsCecS3cThEiA,43796
|
|
62
|
+
pygeodesy/simplify.py,sha256=8OJj7jkxJFVE5jQRvbpm14_Oxrv4Oju7atIGFRg3zUE,22068
|
|
63
|
+
pygeodesy/solveBase.py,sha256=4lKwoWCiDjQjaS_iMUZ7m8nkLL92yNHBcNsmNsulOdc,19631
|
|
64
|
+
pygeodesy/sphericalBase.py,sha256=54na1mQCuyZ1dYzpt801AC2B7PStLNmt3CRwAC2A03A,32071
|
|
65
|
+
pygeodesy/sphericalNvector.py,sha256=N_qB3ziZMf0spE0fqd-GVW9omAy5YT3HdsE2DB2Td9Y,54948
|
|
66
|
+
pygeodesy/sphericalTrigonometry.py,sha256=YN-Gv2m1rWg2rzAXpuAFPu2WL-ARt3u1zKNWJLZ8JAk,64398
|
|
67
|
+
pygeodesy/streprs.py,sha256=tS21sthUtj06Jmh9rdyAbiczwjNjvZTMWvUmJwD9ODs,23728
|
|
68
|
+
pygeodesy/trf.py,sha256=DPfcjdSEOz7xlhdRgfQVCnX5j9jUTkfK4sYGP4EbolI,119215
|
|
69
|
+
pygeodesy/units.py,sha256=9zAnu28f0c7pELZviZDukxz6hjeAwhBvH5wq8F2-cww,35561
|
|
70
|
+
pygeodesy/unitsBase.py,sha256=9AHGuUuGWmKUYHNZt6tVxUkLDvSAyr2gitikME75eZg,14141
|
|
71
|
+
pygeodesy/ups.py,sha256=_Qyp1cBhAGOGPya09zZQYO468H2Nc8jxKYw-HgOMa8o,23288
|
|
72
|
+
pygeodesy/utily.py,sha256=lucez138JJVLAafMciduGMcDyvPrsSjwr-6ApToHPIM,41330
|
|
73
|
+
pygeodesy/utm.py,sha256=Cu0CTqXVSNIIdzp8cejd0ONvo8Y26WtB3spt2o10ZV8,31123
|
|
74
|
+
pygeodesy/utmups.py,sha256=MsgnWVw0u_4nAO_kol4GjUTg7dMGwURR2hv3TV8eVik,13176
|
|
75
|
+
pygeodesy/utmupsBase.py,sha256=v9ZCOBaaMaAF-rUdzL-kbj0pov-E-8aBq9nuOMSnxYw,22730
|
|
76
|
+
pygeodesy/vector2d.py,sha256=JQZIefGm0GmqsvTnXX2OXqbxPaliFEu7jtHCSb3oeDM,40306
|
|
77
|
+
pygeodesy/vector3d.py,sha256=kGSH5jJl6Z0KaqDX3GcQPgNV7JSTON2BybTgitR8IHk,43045
|
|
78
|
+
pygeodesy/vector3dBase.py,sha256=Qnom8vNf749ILZ0OChW4TeVZCrKnYLf_59rC_-7_cAs,40884
|
|
79
|
+
pygeodesy/webmercator.py,sha256=dra_UVuDBSZcXb1GpCFQzu8SYKnLXyzEFMh1Xo5wKHg,15016
|
|
80
|
+
pygeodesy/wgrs.py,sha256=1GjUTke4vliL_x_niBX-YC7rlWz7VewddQNTvH3ULoA,15503
|
|
81
|
+
pygeodesy/auxilats/_CX_4.py,sha256=SDx8G11WGE5zNscnm1Xa2s5uU1ksXda-WFK3LOH2yZ8,6830
|
|
82
|
+
pygeodesy/auxilats/_CX_6.py,sha256=dpyW7c79v__O9ckP7PYYRS7mDwCoWU0_OBdG1D5o7vo,11278
|
|
83
|
+
pygeodesy/auxilats/_CX_8.py,sha256=vmR0CyTPHYON5W5ZqGW3qlOX9iDXRtY5JEZu3GyZz80,18900
|
|
84
|
+
pygeodesy/auxilats/_CX_Rs.py,sha256=EV6Py2yxqtf3FAykmdAHa3Rj9V_yfP21BYwayXNk_zU,8679
|
|
85
|
+
pygeodesy/auxilats/__init__.py,sha256=u3hwLEvkaiD4KU-kfHfi26IbKWZHWLIBVukCFYNpQjo,2883
|
|
86
|
+
pygeodesy/auxilats/__main__.py,sha256=JPDbuG6UnghFtWBbNzb7Uuv9bXDW55ZXXd2PV-6Tc9o,3340
|
|
87
|
+
pygeodesy/auxilats/auxAngle.py,sha256=QrkiKKHpH7gYoLA5WSdePX0198oDB0yiwGSx0erWLMc,16671
|
|
88
|
+
pygeodesy/auxilats/auxDLat.py,sha256=6bamjB_s0RbINNU3V8W9lzsjXl3tWcjkkwLLgusclVM,10956
|
|
89
|
+
pygeodesy/auxilats/auxDST.py,sha256=4VkQ6RfpUA0NvTZawP-bMatJMbrFz3lbzyXKwfQmdB4,10464
|
|
90
|
+
pygeodesy/auxilats/auxLat.py,sha256=qWvIdfpvIQUF7jsgJyxeNgkbjlbIPsNs8-uvPMxyJbM,31972
|
|
91
|
+
pygeodesy/auxilats/auxily.py,sha256=_D-7n-73pVdZR459NF0WGmO3eOVEtiyaongKCGPvHkA,8085
|
|
92
|
+
pygeodesy/deprecated/__init__.py,sha256=TsSpb0A6l5BelXOuhHvljy6m-UoR0Sf86CsCXlgfuls,2823
|
|
93
|
+
pygeodesy/deprecated/bases.py,sha256=5cwF5nZ6SmAwib3iEmOJ66yzLfimfl1Ru93U_ohbtkA,1649
|
|
94
|
+
pygeodesy/deprecated/classes.py,sha256=3EYzIaCndfUG2jx2_5oyrcZ8LrCWrhULferR6eCBobY,17486
|
|
95
|
+
pygeodesy/deprecated/consterns.py,sha256=G5GisRNoza0gi2uGz0a_omVq3Herrirc5x-k7Ltzj0U,1917
|
|
96
|
+
pygeodesy/deprecated/datum.py,sha256=duDFoz2mAmQDt2AaHTShglWYlWXv_sKR7PhGs3lRM6s,1910
|
|
97
|
+
pygeodesy/deprecated/functions.py,sha256=FaryhoN9KydS3W6V951lY_qUTONCx0EpUm-FEitvZyU,15844
|
|
98
|
+
pygeodesy/deprecated/nvector.py,sha256=AXukNWyhy-LzA-Zio5VmPiKUaJ75U_Dr7-pyVUy0RXM,2117
|
|
99
|
+
pygeodesy/deprecated/rhumbBase.py,sha256=fh2ZkaW5yenFkG5xvYvyroscqWuuwQXyLfVN6gpzKf8,1370
|
|
100
|
+
pygeodesy/deprecated/rhumbaux.py,sha256=7g_R-_Bsc8FDmY4JcUyA7VEQe8EIJe0i8u3jOrgrrAo,1423
|
|
101
|
+
pygeodesy/deprecated/rhumbsolve.py,sha256=_exbzuupjgodQtdUJ_zrggqMx3X7SB88BROu0yYIJTg,1426
|
|
102
|
+
pygeodesy/deprecated/rhumbx.py,sha256=SdCzJgaSMBxZUQpT3vu52eE1neZTMkddz1Vuu4KsGxg,1420
|
|
103
|
+
pygeodesy/geodesicx/_C4_24.py,sha256=qkKFpXNPBo2RRfCjNV_AjNO4nZm_wsUux4IZuyfZJt8,90707
|
|
104
|
+
pygeodesy/geodesicx/_C4_27.py,sha256=rrcq4FeTQThu4vmYqLK0cmjpCLkPTCQbS728AbDjPRw,134215
|
|
105
|
+
pygeodesy/geodesicx/_C4_30.py,sha256=A6Keryy3a4iF6chjf1RMFG-Fb9M49_QQaI-4T-2NXx0,201921
|
|
106
|
+
pygeodesy/geodesicx/__init__.py,sha256=9zxci6ekoDGhyq7wAED3xPCD3-bJ_-Vx8vteCHvUOeI,2468
|
|
107
|
+
pygeodesy/geodesicx/__main__.py,sha256=834PZqoetW0V3xeIvCSbh6TPMCv8wq2-mUIm8cLkv-w,4330
|
|
108
|
+
pygeodesy/geodesicx/gx.py,sha256=qXz-YWiIjJhg2ytyFKFvjXAkVqTqQ26TzzGU3bncbfE,60438
|
|
109
|
+
pygeodesy/geodesicx/gxarea.py,sha256=dyoAZsCeytAUBCHG4Nxjll8AWcXmBHKzkxzIztj9X-g,20520
|
|
110
|
+
pygeodesy/geodesicx/gxbases.py,sha256=FC9oZLaKy-uf8o5Bmmr7MK4jBBvhzgaETzb5Qdixa04,6319
|
|
111
|
+
pygeodesy/geodesicx/gxline.py,sha256=PoPa_Qz9KSmP6Pb3LZgQg-9FcLpvMuVBRwxAkAtrYOw,28284
|
|
112
|
+
pygeodesy/rhumb/__init__.py,sha256=wetV7OwO6z-_D0FVTphwu6u0bA7h-sG3pfZa3WGAvfk,2296
|
|
113
|
+
pygeodesy/rhumb/aux_.py,sha256=s5jfZGkRe_Izjrv0rSpx2_0j5SA6nW9YT4ElhLS9Bw0,16117
|
|
114
|
+
pygeodesy/rhumb/bases.py,sha256=RBWGVBogfZAT7azFe-46mF_hUoI-bIvWCxwoiE8-Pvo,54218
|
|
115
|
+
pygeodesy/rhumb/ekx.py,sha256=L__f41hdrU8cVcqbWolEvdLAXtQdULlYhxsbccoYwok,24058
|
|
116
|
+
pygeodesy/rhumb/solve.py,sha256=85GonvF3qsp8I--XA2DUuwR0J7BU4S3O9BjnLEStcMw,24910
|
|
117
|
+
pygeodesy/triaxials/__init__.py,sha256=dZ3zXLWIIGhjMBYE6-8gJSfokNw4x5wg7eaTGSZH2Hw,3894
|
|
118
|
+
pygeodesy/triaxials/bases.py,sha256=Fv_sPyC5Mp_LouFbuOywK7BRcR0I2XmLeKCIOtlvX5w,34945
|
|
119
|
+
pygeodesy/triaxials/conformal3.py,sha256=FrJLQ0m58YvP_heh9jFH5TkhR46kSTzCIgtmtRPMErQ,23883
|
|
120
|
+
pygeodesy/triaxials/triaxial3.py,sha256=jCPAHwofXTZKpAN8xNtNlT2f5R0COzn46E1y_5mKnyU,40581
|
|
121
|
+
pygeodesy/triaxials/triaxial5.py,sha256=C38E8Atkxfiu8J6HOfkUUVU5lRn2kIjdSh5opkMep-s,53028
|
|
122
|
+
pygeodesy-25.12.31.dist-info/METADATA,sha256=cCh8F1b6GYHz1DBtBYPlSOdW5tM0JAMq7ATtdgU0yYg,20710
|
|
123
|
+
pygeodesy-25.12.31.dist-info/WHEEL,sha256=Kh9pAotZVRFj97E15yTA4iADqXdQfIVTHcNaZTjxeGM,110
|
|
124
|
+
pygeodesy-25.12.31.dist-info/top_level.txt,sha256=cEQPatCXzKZqrivpULC5V5fuy9_V_bAwaP_gUGid7pQ,10
|
|
125
|
+
pygeodesy-25.12.31.dist-info/RECORD,,
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
pygeodesy/LICENSE,sha256=YfgAiyxOwY6P9Kkb1_5XN81nueTLrpb3Ffkv3EuPgFU,1144
|
|
2
|
-
pygeodesy/__init__.py,sha256=EYklJAQ7lqBC-O6RmgGjNRqP81HDX2w9pnSQ6YiQd0w,42328
|
|
3
|
-
pygeodesy/__main__.py,sha256=HpOBmuhI7yVP1FIAEugvd9Lb54kzew-nM78be0r4SC4,5597
|
|
4
|
-
pygeodesy/albers.py,sha256=mb3YbVvoBq8a7AytT0HeVxe8DGEvx1KFN2Usl2ksKwk,30908
|
|
5
|
-
pygeodesy/azimuthal.py,sha256=GI7nM7RWDwOh5DKYrrZBZDHcP9aSJgCBSdgDm2ovLvY,49849
|
|
6
|
-
pygeodesy/basics.py,sha256=sKIyFcBNz6UzzY2YRr0bt1WuQLnEFUMfLKW7z4vCOII,32915
|
|
7
|
-
pygeodesy/booleans.py,sha256=sYXV22cKtZlJXhwxcWK5gW5r0qSOP71XnFwC4xAsa0s,72636
|
|
8
|
-
pygeodesy/cartesianBase.py,sha256=KX74yZE-fM7wHDnrV5OkAEyKwyZJy5o9VuzVjb1caZQ,45355
|
|
9
|
-
pygeodesy/clipy.py,sha256=a7khVUnc9PjCU7sLN2RP4BsSwDNpKlIMEasfz2wCKoc,27481
|
|
10
|
-
pygeodesy/constants.py,sha256=8b6xQigjfq5FZYX1FCdJV4eqaHcmZr33ylq4Y0XggJc,21049
|
|
11
|
-
pygeodesy/css.py,sha256=vdQax5m7BMSpr7PUyqedCSvx73ilWuhXQTp39i8FOfA,25793
|
|
12
|
-
pygeodesy/datums.py,sha256=Vp1fP7sSV1EuRbuO2scnZ3qiTZD1CvL4O12KSRlf1SU,34068
|
|
13
|
-
pygeodesy/dms.py,sha256=egtF9gjReovgaSKJ_27KHZjvo4vLDdLEZ7yXSf19EZs,42202
|
|
14
|
-
pygeodesy/ecef.py,sha256=vxLhJeyl9EWEYTiX97cuyJuimyI3upsX2M4R30yEFNM,62577
|
|
15
|
-
pygeodesy/ecefLocals.py,sha256=zoxGUJeYX2UXzR9r0jaByrvfrrpmrvAhjyQsz433RjA,7794
|
|
16
|
-
pygeodesy/elevations.py,sha256=WrWPZNgkZX9Ys_1ij_gyE4jzdIv85JYAaR2cK3vc4gQ,10879
|
|
17
|
-
pygeodesy/ellipsoidalBase.py,sha256=UpmJfjAuC7pvN9VIxLXveAmotPVW7oL2APAJUTi34Uc,55711
|
|
18
|
-
pygeodesy/ellipsoidalBaseDI.py,sha256=PbSJkUUHpRGYgnnciMD-sWqTCReZv_FAc8SUonF3ZbI,38544
|
|
19
|
-
pygeodesy/ellipsoidalExact.py,sha256=WEAEviB1xnWDy4OTg-XCleL14LPl2cbfO6s_FhbG8bY,17120
|
|
20
|
-
pygeodesy/ellipsoidalGeodSolve.py,sha256=l6JwzuMlzBONhJTJhm7oi-x-FWx9cKAAIM1kMDOFaf0,17108
|
|
21
|
-
pygeodesy/ellipsoidalKarney.py,sha256=W_Liw5MxTqJJGsxMi50ui8grRSPKwkG2HH-Mv_mXQYk,18839
|
|
22
|
-
pygeodesy/ellipsoidalNvector.py,sha256=HLFjX6o26q2fzVCjLSL0PdEh96xhGtjfzo2V_k54j4A,30146
|
|
23
|
-
pygeodesy/ellipsoidalVincenty.py,sha256=zeTvid09NGuYJ1WJ__a3ApCBGSzX0A-Rhs8-sQXMNQQ,26273
|
|
24
|
-
pygeodesy/ellipsoids.py,sha256=hdBT-Vl5Ukq51s19brzctT0vZfh8qZYlbUjmrrQPE-Q,108817
|
|
25
|
-
pygeodesy/elliptic.py,sha256=uWxzmr7woRKqhsBWm6iGTwag5Ga0L184szkPWN3diSg,45515
|
|
26
|
-
pygeodesy/epsg.py,sha256=VIBidzAEuoBF4LdlJ4r3WtpL0Ymhru8kf4fAgfFr5ok,8220
|
|
27
|
-
pygeodesy/errors.py,sha256=HCFhdUtRzE51CnQseuB2BgJ7MFLysmOhpbnjaEupIhA,32498
|
|
28
|
-
pygeodesy/etm.py,sha256=swF0QL52uo_DK073hymix8IitMyArOf-n0LL98BGwRU,46796
|
|
29
|
-
pygeodesy/fmath.py,sha256=5gPHRqD5DbPqrM8BFRFVo1IYumKUVWoTcvEtzc8BFiE,37812
|
|
30
|
-
pygeodesy/formy.py,sha256=7-CdPiagdVrbDMjWieX_guN4RvFVCYKOM3yDKSFPRWU,69777
|
|
31
|
-
pygeodesy/frechet.py,sha256=dBnQ5ePuaUdKv62-e9RfovFDxELsZPQEKMLww9NOf7Q,35588
|
|
32
|
-
pygeodesy/fstats.py,sha256=M6UOrwmeGp6kjYuYfc6Iq9ibMJAFNm6D4C5GnvlJeuM,28348
|
|
33
|
-
pygeodesy/fsums.py,sha256=I2yr6XtQH4Mf4qaiSuta2U_sKc_N0xCc7cIez9YLVo4,104978
|
|
34
|
-
pygeodesy/gars.py,sha256=AXioT4Lh1cwrd7fF6dHcVJw-9vu2oAnZrzo_ka2Y3Ts,11761
|
|
35
|
-
pygeodesy/geodesici.py,sha256=V2FW_xQUwm6HfiVoZoBXhipsAV0EjXHnAc_wUG78kAQ,74889
|
|
36
|
-
pygeodesy/geodesicw.py,sha256=xDxxxr4HOT-8Mh85zD6QZzyO-mfqUavfwQMStYrsF8c,30029
|
|
37
|
-
pygeodesy/geodsolve.py,sha256=_s6Wk13yTI8eTsaMpnzjqacNXLjPh_HoevmjECtrRjE,28668
|
|
38
|
-
pygeodesy/geohash.py,sha256=bqJMuA0-TH2vgOd7VaW1q4dw8KL43oCmV3eSjP90Bak,40124
|
|
39
|
-
pygeodesy/geoids.py,sha256=m0EqTAKCuOVxrRpoPdmgymu0i0ufV2xpdt_laJLFqqE,86129
|
|
40
|
-
pygeodesy/hausdorff.py,sha256=KGB0CIeNkBqR0sXIbRJvcgXPrM-4Mpi2aBOqDeZjqZ0,32269
|
|
41
|
-
pygeodesy/heights.py,sha256=q7ej8RO-iZ5hfNi3OxwO3w_Opk4xHAZIzHbcbFTO3CA,41011
|
|
42
|
-
pygeodesy/internals.py,sha256=RS_8XXDMoZqgDizztPtvyn8kl3rozS4n5vg8CjOp_WQ,24712
|
|
43
|
-
pygeodesy/interns.py,sha256=QTP_6rStQ283DE-rL7rCAcfEffuiAXustBGkCY_DHJ0,23508
|
|
44
|
-
pygeodesy/iters.py,sha256=nKVp_LUQyTqOz_OLzY25g6-_xlKG7lmAnjKKMXESmiM,20345
|
|
45
|
-
pygeodesy/karney.py,sha256=GJuruLHO7IjhwXYNh507EbHO5VFNXwhRpzIkaGCec7c,41652
|
|
46
|
-
pygeodesy/ktm.py,sha256=9eZ5Wk2HHhRl0IyypJ4guhhxGJLriWZm0Wfb3Z9Gf7Y,27270
|
|
47
|
-
pygeodesy/latlonBase.py,sha256=eF8tr0fP9nc8JMGbJ0JyeFfECZyjlBJbtIchKRdU4B4,75317
|
|
48
|
-
pygeodesy/lazily.py,sha256=_8ZqQgupvH2cKVl84Q6yM8o6ySyef6Ioyvr77mXDFcU,47802
|
|
49
|
-
pygeodesy/lcc.py,sha256=nU_aWXgsxwB53c3CKM-dBQoDRoypkrY-tVmKmU9yQQ8,25785
|
|
50
|
-
pygeodesy/ltp.py,sha256=N3TMipTWKUOeZYzn3UeJJqe5J4Yk788390ohQM1ykAE,50893
|
|
51
|
-
pygeodesy/ltpTuples.py,sha256=t-n7p9A3JCVasv8LKCV4PkOTmXJZi91BkBFm8pBZM5o,59101
|
|
52
|
-
pygeodesy/mgrs.py,sha256=ZgCBH_M_YFxuFu5ukVOVetk-uftv-4GJP-QJrtoqtcU,29842
|
|
53
|
-
pygeodesy/named.py,sha256=_dlImd3OzHS1vqm673e7CEJVXkbczaAwckw8H8SGoEM,52787
|
|
54
|
-
pygeodesy/namedTuples.py,sha256=JlO8uWmR65RkT7Rdgc9knfI0-bqJeA-tm2ZKsesztVU,30598
|
|
55
|
-
pygeodesy/nvectorBase.py,sha256=r-O-ErwTXqDfLg4zYqhB4IqTJc8P8rbJlMm0XfQN2Gs,29927
|
|
56
|
-
pygeodesy/osgr.py,sha256=4mFUcn1vMOju3PK1rKohPtIlJZrBGPJrcRjFl-CoxqE,30852
|
|
57
|
-
pygeodesy/points.py,sha256=2vQpgqxJiC7Cgn03pqiezTM4I-CTquv9tQZi4uYWjpw,64497
|
|
58
|
-
pygeodesy/props.py,sha256=GCBqrkMfpbHuca2Sh68WSGDplIeZLvCDDXUewyvEiqI,24600
|
|
59
|
-
pygeodesy/resections.py,sha256=vCbnEyNghGkblrPA58-MspaxkZcInnvRgS-oSBIe1hM,43796
|
|
60
|
-
pygeodesy/simplify.py,sha256=O04NSb0ezXM8z3lCcajXbetZuum6PURAOPYTsJ27gxI,22068
|
|
61
|
-
pygeodesy/solveBase.py,sha256=mZdud0LveosWEXbufVzTMM9y6wuObS0O2clDX2LmRgE,18864
|
|
62
|
-
pygeodesy/sphericalBase.py,sha256=hq6dyeeIHBy_T0Q6PIwSvmo1U70Ir5KBeMTwQplzqHQ,32071
|
|
63
|
-
pygeodesy/sphericalNvector.py,sha256=bu0yB4PEq1cs6BS8QFqtljWpVEw7ESwq2yILOzGDuAc,54948
|
|
64
|
-
pygeodesy/sphericalTrigonometry.py,sha256=PqxNMSK8DI7TJuOtkQ5afzJtLfDzOkVe_tRdLTq9x14,64398
|
|
65
|
-
pygeodesy/streprs.py,sha256=UYlk5v-GEJHMDiHZsqLssY3h6J5LbFw9dsCsKJbiERs,23684
|
|
66
|
-
pygeodesy/trf.py,sha256=M0kzyclDJ5q4wCr-2HDIj6_J42FsrffnFGiyPkgHEmE,119216
|
|
67
|
-
pygeodesy/triaxials.py,sha256=tj2IjG6BLmtp6PjcX-xsEv9ONv2eAp49amwon9L6v4Y,66992
|
|
68
|
-
pygeodesy/units.py,sha256=DOSFqTdX1ryabNaQ0kmUvC1RpYzOw1i0T1205ovYeno,35561
|
|
69
|
-
pygeodesy/unitsBase.py,sha256=cVNKG24Fov73gLFPGwGdjvXmM-8fd3MDufVubABAMeE,14141
|
|
70
|
-
pygeodesy/ups.py,sha256=k7MDyq_aKO70m8sEeOCvpFb3nyrBmBdbdPST-UgxgeA,23349
|
|
71
|
-
pygeodesy/utily.py,sha256=1f5tMdkmfLaYNg0ALHLpcIixuLimjLCiAVqpf_FbRng,41098
|
|
72
|
-
pygeodesy/utm.py,sha256=kcXliftP9q0nTxviIOixVyvResK2Jydj-G52CXJiSuQ,31123
|
|
73
|
-
pygeodesy/utmups.py,sha256=31RD8l7M-vcRXU9_wnkb_PNUcKjOr1HAmwjOndjkgXE,13176
|
|
74
|
-
pygeodesy/utmupsBase.py,sha256=PptZ4Mm8BaDUCA8v1sK54o8idw_24kq6loAuYv0bejE,22730
|
|
75
|
-
pygeodesy/vector2d.py,sha256=3Pqadaafd0vn4DWCHq5gaE3utL0PDZxp9hI_G5j3O1I,40306
|
|
76
|
-
pygeodesy/vector3d.py,sha256=sC7u9tgFFWoWHFxqtO-dvKVuiEzraw50TDU_QpdDbYw,43045
|
|
77
|
-
pygeodesy/vector3dBase.py,sha256=YMX3veS3EEjVkFszCgztbX_NtHQXd1BgaKZ898_wgJI,40884
|
|
78
|
-
pygeodesy/webmercator.py,sha256=z3Ft5TeHc9FoLA8zQhzTrSuShHSz0aHjanbvj53ohmo,15016
|
|
79
|
-
pygeodesy/wgrs.py,sha256=1MK72g3HsfdsvChM6rBy_auxzSvWHSoer8fEuT4LinI,15503
|
|
80
|
-
pygeodesy/auxilats/_CX_4.py,sha256=DX67nZ1E4nOis8d_wQ8tn5T-SAVNDBJH3kp9IuQc8lM,6830
|
|
81
|
-
pygeodesy/auxilats/_CX_6.py,sha256=T89kMuUijlLZzmqoI8XiTGTOzj4A4SKhCyt_rOroCq4,11278
|
|
82
|
-
pygeodesy/auxilats/_CX_8.py,sha256=Ff_VTStb-dZkGz7-RL1tzymPgPbTwtl_6EzPquPMamc,18900
|
|
83
|
-
pygeodesy/auxilats/_CX_Rs.py,sha256=hMPcfAQbkD1DzwrRTB9pecfoytxHilPp5__n6UYUNlE,8679
|
|
84
|
-
pygeodesy/auxilats/__init__.py,sha256=kyIPbhyaXR1I6M4uyRf5VOOJ4EGqdURrrz34u5fvHho,2883
|
|
85
|
-
pygeodesy/auxilats/__main__.py,sha256=jH0ShJaDR8zWfoLPXuut37BJbVWVDsAm9rb4xc25XOY,3340
|
|
86
|
-
pygeodesy/auxilats/auxAngle.py,sha256=4Yb_RphD_OKVSPr--85uThNFTAMrsBfia9ba183mvtY,16751
|
|
87
|
-
pygeodesy/auxilats/auxDLat.py,sha256=lvffZo8DdVWWEHusPNXRYQeoCFfZcG5rNhgEooL5Xu0,10956
|
|
88
|
-
pygeodesy/auxilats/auxDST.py,sha256=ab8ByHMmX1dWBmGgOGxYUlmkZqTKKpawg5maLYYrG7M,10464
|
|
89
|
-
pygeodesy/auxilats/auxLat.py,sha256=2d6uliIVfxOHp8qibom-8l5T7bLONSyTr6LRTt4OwRs,31972
|
|
90
|
-
pygeodesy/auxilats/auxily.py,sha256=eA5-QSr3pZgY_5dJQsIiCWwlXofZsYJTGQVpMhfybSs,8085
|
|
91
|
-
pygeodesy/deprecated/__init__.py,sha256=avPno_C9H8QYbAsNRkxPIyfYX_tDHeakKqSsJMwJU9U,2823
|
|
92
|
-
pygeodesy/deprecated/bases.py,sha256=pL4fEW7PTrDc_coggRCcnrs3izp-MWUEyvr6yBNzgMw,1649
|
|
93
|
-
pygeodesy/deprecated/classes.py,sha256=8va_ePoOq_TWkzOMJTeaIwyEuDGP9sYsbChnuH7FdqU,17266
|
|
94
|
-
pygeodesy/deprecated/consterns.py,sha256=RC-YvqQXAEVoIaLnaLrIrA1Mr3oXLk3HT9n1HLvGCSs,1917
|
|
95
|
-
pygeodesy/deprecated/datum.py,sha256=aeY-POZBZrKKiTnrhqOImV5AfiXu2-9Vz8xu_d4ze2g,1910
|
|
96
|
-
pygeodesy/deprecated/functions.py,sha256=TK3T1zGAmTLowLeKZik7qknRBthCqjIGhdOjebnCdhE,15844
|
|
97
|
-
pygeodesy/deprecated/nvector.py,sha256=rttz-znpX2Tm1ttoJt8_E8V_9n_ZciKi_CvvbwFmZQM,2117
|
|
98
|
-
pygeodesy/deprecated/rhumbBase.py,sha256=y1DcGwGBfIbbTK5upm1XgkbCVIlpGc5MLDn5WxcuLp8,1370
|
|
99
|
-
pygeodesy/deprecated/rhumbaux.py,sha256=pikSwb5cIE-MVwHPFjwGd-JYau_Of-Lf6wgghjNWS98,1423
|
|
100
|
-
pygeodesy/deprecated/rhumbsolve.py,sha256=GRyrxUTT19gjSe8BohUswxXRBjoNWrzQryPbqTH2XhE,1426
|
|
101
|
-
pygeodesy/deprecated/rhumbx.py,sha256=YSzTywlDLfVYZmJjAEi_gLtWbsf4eGxZembaL3wOTuk,1420
|
|
102
|
-
pygeodesy/geodesicx/_C4_24.py,sha256=3OkzOxf0DdO1QL4N9CVYjpOgFCm8FcYjCyvcTLpL2wc,90707
|
|
103
|
-
pygeodesy/geodesicx/_C4_27.py,sha256=grqtju94Nu9V_eQPqe_7aRbLCYflxRuK127pPOPwuDA,134215
|
|
104
|
-
pygeodesy/geodesicx/_C4_30.py,sha256=I4ZuTy64yOq1IVgRtc_kqOL0HnKzXeTea7kTFSolcJs,201921
|
|
105
|
-
pygeodesy/geodesicx/__init__.py,sha256=1wUYni2aucT66bNkOqp1ZOix6a4rlBRHJimUDUWIgt4,2468
|
|
106
|
-
pygeodesy/geodesicx/__main__.py,sha256=ZWx2vPPaQEXwFBQWOjKYrjM9Deb0b-_778PxwiM1Rww,4330
|
|
107
|
-
pygeodesy/geodesicx/gx.py,sha256=uEXulVciKipCz28VMQqhtV0kLuy71vy-EFF42GWWi-Q,60438
|
|
108
|
-
pygeodesy/geodesicx/gxarea.py,sha256=a_yhNsjjRM0E9-WYBbhHjaefjLuAzhNQxTHiv0LnvO0,19588
|
|
109
|
-
pygeodesy/geodesicx/gxbases.py,sha256=qb1tYsh2nIvyXoVhU-pdmolANHj9tHZxiH2f7Ls3Jkw,6319
|
|
110
|
-
pygeodesy/geodesicx/gxline.py,sha256=9aUbLEok0ewg8j1UpZ1Ud7X0zH8Mu6QoUO2bjdpmEag,28284
|
|
111
|
-
pygeodesy/rhumb/__init__.py,sha256=MByyXXwg0kJRHckEfaxWMW_2i4U15rRRgN7iTzeOK_I,2207
|
|
112
|
-
pygeodesy/rhumb/aux_.py,sha256=2FbR_0Y0ofOROay2Z16oiLILhd7G50LUiatkQhBwEMA,16117
|
|
113
|
-
pygeodesy/rhumb/bases.py,sha256=R-QLV8a0KZUvaI1wEkyAG4yO-IQNNK4I2O7WRIMBJuo,54218
|
|
114
|
-
pygeodesy/rhumb/ekx.py,sha256=LlMjVJqb-Q5rJnexJi-0TPRkUZkJaPQ7fVRypxkxNjo,24058
|
|
115
|
-
pygeodesy/rhumb/solve.py,sha256=z8z_XYObTgz7w1skNLNcLBpe-EO_r0H4sVcZGlBcWnc,24005
|
|
116
|
-
pygeodesy-25.11.5.dist-info/METADATA,sha256=tohssI5czjmAyKZhTBWpSr9Qu8FBC0_4_xyXLYbhaKc,20142
|
|
117
|
-
pygeodesy-25.11.5.dist-info/WHEEL,sha256=Kh9pAotZVRFj97E15yTA4iADqXdQfIVTHcNaZTjxeGM,110
|
|
118
|
-
pygeodesy-25.11.5.dist-info/top_level.txt,sha256=cEQPatCXzKZqrivpULC5V5fuy9_V_bAwaP_gUGid7pQ,10
|
|
119
|
-
pygeodesy-25.11.5.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|