pygeodesy 24.5.8__py2.py3-none-any.whl → 24.5.24__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.
Files changed (83) hide show
  1. {PyGeodesy-24.5.8.dist-info → PyGeodesy-24.5.24.dist-info}/METADATA +2 -2
  2. PyGeodesy-24.5.24.dist-info/RECORD +116 -0
  3. pygeodesy/__init__.py +16 -12
  4. pygeodesy/__main__.py +9 -10
  5. pygeodesy/albers.py +42 -42
  6. pygeodesy/auxilats/__init__.py +1 -1
  7. pygeodesy/auxilats/__main__.py +7 -10
  8. pygeodesy/auxilats/auxAngle.py +32 -31
  9. pygeodesy/auxilats/auxLat.py +81 -51
  10. pygeodesy/azimuthal.py +123 -124
  11. pygeodesy/basics.py +165 -176
  12. pygeodesy/booleans.py +14 -15
  13. pygeodesy/cartesianBase.py +25 -23
  14. pygeodesy/clipy.py +3 -3
  15. pygeodesy/constants.py +8 -6
  16. pygeodesy/css.py +50 -42
  17. pygeodesy/datums.py +50 -48
  18. pygeodesy/dms.py +6 -6
  19. pygeodesy/ecef.py +27 -27
  20. pygeodesy/elevations.py +2 -2
  21. pygeodesy/ellipsoidalBase.py +28 -27
  22. pygeodesy/ellipsoidalBaseDI.py +8 -7
  23. pygeodesy/ellipsoidalNvector.py +11 -12
  24. pygeodesy/ellipsoids.py +41 -35
  25. pygeodesy/elliptic.py +12 -10
  26. pygeodesy/epsg.py +4 -3
  27. pygeodesy/errors.py +35 -13
  28. pygeodesy/etm.py +62 -53
  29. pygeodesy/fmath.py +48 -41
  30. pygeodesy/formy.py +93 -65
  31. pygeodesy/frechet.py +117 -102
  32. pygeodesy/fstats.py +52 -46
  33. pygeodesy/fsums.py +169 -145
  34. pygeodesy/gars.py +10 -9
  35. pygeodesy/geodesicw.py +32 -30
  36. pygeodesy/geodesicx/__init__.py +1 -1
  37. pygeodesy/geodesicx/__main__.py +4 -4
  38. pygeodesy/geodesicx/gx.py +40 -32
  39. pygeodesy/geodesicx/gxarea.py +15 -12
  40. pygeodesy/geodesicx/gxbases.py +3 -4
  41. pygeodesy/geodesicx/gxline.py +6 -8
  42. pygeodesy/geodsolve.py +28 -26
  43. pygeodesy/geohash.py +47 -44
  44. pygeodesy/geoids.py +37 -35
  45. pygeodesy/hausdorff.py +112 -99
  46. pygeodesy/heights.py +136 -129
  47. pygeodesy/internals.py +576 -0
  48. pygeodesy/interns.py +6 -207
  49. pygeodesy/iters.py +22 -19
  50. pygeodesy/karney.py +18 -15
  51. pygeodesy/ktm.py +31 -24
  52. pygeodesy/latlonBase.py +12 -11
  53. pygeodesy/lazily.py +140 -218
  54. pygeodesy/lcc.py +24 -25
  55. pygeodesy/ltp.py +83 -71
  56. pygeodesy/ltpTuples.py +7 -5
  57. pygeodesy/mgrs.py +5 -4
  58. pygeodesy/named.py +136 -49
  59. pygeodesy/namedTuples.py +33 -25
  60. pygeodesy/nvectorBase.py +10 -9
  61. pygeodesy/osgr.py +14 -12
  62. pygeodesy/points.py +13 -13
  63. pygeodesy/props.py +7 -7
  64. pygeodesy/rhumb/__init__.py +1 -1
  65. pygeodesy/rhumb/bases.py +3 -2
  66. pygeodesy/rhumb/solve.py +2 -2
  67. pygeodesy/solveBase.py +8 -7
  68. pygeodesy/sphericalTrigonometry.py +5 -5
  69. pygeodesy/streprs.py +8 -7
  70. pygeodesy/trf.py +8 -8
  71. pygeodesy/triaxials.py +67 -63
  72. pygeodesy/units.py +48 -50
  73. pygeodesy/unitsBase.py +24 -11
  74. pygeodesy/ups.py +7 -6
  75. pygeodesy/utily.py +4 -4
  76. pygeodesy/utm.py +53 -52
  77. pygeodesy/utmupsBase.py +11 -8
  78. pygeodesy/vector2d.py +6 -7
  79. pygeodesy/vector3d.py +16 -17
  80. pygeodesy/vector3dBase.py +5 -5
  81. PyGeodesy-24.5.8.dist-info/RECORD +0 -115
  82. {PyGeodesy-24.5.8.dist-info → PyGeodesy-24.5.24.dist-info}/WHEEL +0 -0
  83. {PyGeodesy-24.5.8.dist-info → PyGeodesy-24.5.24.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: PyGeodesy
3
- Version: 24.5.8
3
+ Version: 24.5.24
4
4
  Summary: Pure Python geodesy tools
5
5
  Home-page: https://GitHub.com/mrJean1/PyGeodesy
6
6
  Author: Jean M. Brouwers
@@ -158,7 +158,7 @@ and McCabe_ using Python 2.7.18 and with Flake8_ using Python 3.11.5, both in 64
158
158
 
159
159
  For a summary of all *Karney*-based functionality in ``pygeodesy``, see module karney_.
160
160
 
161
- *Last updated: May 08, 2024.*
161
+ *Last updated: May 24, 2024.*
162
162
 
163
163
  License
164
164
  =======
@@ -0,0 +1,116 @@
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,,
pygeodesy/__init__.py CHANGED
@@ -349,14 +349,14 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.}
349
349
  @var version: Normalized C{PyGeodesy} version (C{str}).
350
350
  '''
351
351
 
352
- import os.path as _pth
352
+ import os.path as _os_path
353
353
  import sys as _sys
354
354
 
355
355
  _init__all__ = True
356
356
  # <https://PyInstaller.ReadTheDocs.io/en/stable/runtime-information.html>
357
357
  _isfrozen = getattr(_sys, 'frozen', False)
358
- pygeodesy_abspath = _pth.dirname(_pth.abspath(__file__)) # _sys._MEIPASS + '/pygeodesy'
359
- _pygeodesy_ = __package__ or _pth.basename(pygeodesy_abspath)
358
+ pygeodesy_abspath = _os_path.dirname(_os_path.abspath(__file__)) # _sys._MEIPASS + '/pygeodesy'
359
+ _pygeodesy_ = __package__ or _os_path.basename(pygeodesy_abspath)
360
360
 
361
361
  if _isfrozen: # avoid lazy import
362
362
  _lazy_import2 = None
@@ -420,6 +420,7 @@ if _init__all__ and not _lazy_import2: # import and set __all__
420
420
  import pygeodesy.geoids as geoids # PYCHOK exported
421
421
  import pygeodesy.hausdorff as hausdorff # PYCHOK exported
422
422
  import pygeodesy.heights as heights # PYCHOK exported
423
+ import pygeodesy.internals as internals # PYCHOK exported
423
424
  import pygeodesy.interns as interns # PYCHOK exported
424
425
  import pygeodesy.iters as iters # PYCHOK exported
425
426
  import pygeodesy.karney as karney # PYCHOK exported
@@ -504,6 +505,7 @@ if _init__all__ and not _lazy_import2: # import and set __all__
504
505
  from pygeodesy.geoids import * # PYCHOK __all__
505
506
  from pygeodesy.hausdorff import * # PYCHOK __all__
506
507
  from pygeodesy.heights import * # PYCHOK __all__
508
+ from pygeodesy.internals import * # PYCHOK __all__
507
509
  from pygeodesy.interns import * # PYCHOK __all__
508
510
  from pygeodesy.iters import * # PYCHOK __all__
509
511
  from pygeodesy.karney import * # PYCHOK __all__
@@ -544,8 +546,9 @@ if _init__all__ and not _lazy_import2: # import and set __all__
544
546
  from pygeodesy.wgrs import Georef, WGRSError # PYCHOK lazily
545
547
 
546
548
  def _all(globalocals):
547
- from pygeodesy.interns import NN as _NN, _attribute_, _COMMASPACE_, _DOT_, \
548
- _headof, _module_, _s_, _UNDER_ # PYCHOK expected
549
+ from pygeodesy.internals import _headof, _DOT_ # PYCHOK expected
550
+ from pygeodesy.interns import NN as _NN, _attribute_, _COMMASPACE_, \
551
+ _module_, _s_, _UNDER_ # PYCHOK expected
549
552
  from pygeodesy.streprs import Fmt as _Fmt # PYCHOK expected
550
553
  # collect all public module and attribute names and check
551
554
  # that modules are imported from this package, 'pygeodesy'
@@ -570,10 +573,10 @@ if _init__all__ and not _lazy_import2: # import and set __all__
570
573
  raise ImportError('missing %s%s: %s' % (_attribute_, s, t))
571
574
  ns.extend(attrs)
572
575
  # XXX if ps: # check that mod is a _pygeodesy_ module
573
- # XXX m = globalocals[mod] # assert(m.__name__ == mod)
574
- # XXX f = getattr(m, '__file__', _NN)
575
- # XXX d = _pth.dirname(_pth.abspath(f)) if f else pygeodesy_abspath
576
- # XXX p = getattr(m, '__package__', _NN) or _pygeodesy_
576
+ # XXX m = globalocals[mod] # assert(_dunder_nameof(m) == mod)
577
+ # XXX f = getattr(m, _dunder_file_, _NN)
578
+ # XXX d = _os_path.dirname(_os_path.abspath(f)) if f else pygeodesy_abspath
579
+ # XXX p = getattr(m, _dunder_package_, _NN) or _pygeodesy_
577
580
  # XXX if p not in ps or d != pygeodesy_abspath:
578
581
  # XXX t = '%s from %r' % (_DOT_(p, mod), f or p)
579
582
  # XXX raise ImportError('foreign %s: %s' % (_module_, t))
@@ -584,12 +587,13 @@ else:
584
587
  __all__ = ()
585
588
  _init__all__ = False
586
589
 
587
- from pygeodesy.interns import _DOT_, _version2 # PYCHOK import
588
- __version__ = '24.05.08'
590
+ from pygeodesy.internals import _version2, _DOT_ # PYCHOK import
591
+ # from pygeodesy.interns import _DOT_ # from .internals
592
+ __version__ = '24.05.24'
589
593
  # see setup.py for similar logic
590
594
  version = _DOT_(*_version2(__version__, n=3))
591
595
 
592
- del _DOT_, _lazy_import2, _pth, _sys, _version2
596
+ del _DOT_, _lazy_import2, _os_path, _sys, _version2
593
597
 
594
598
  # **) MIT License
595
599
  #
pygeodesy/__main__.py CHANGED
@@ -5,7 +5,7 @@ u'''Print L{pygeodesy} version, etc. using C{python -m pygeodesy}.
5
5
  '''
6
6
 
7
7
  __all__ = ()
8
- __version__ = '23.11.24'
8
+ __version__ = '24.05.15'
9
9
 
10
10
  from os.path import basename, dirname
11
11
 
@@ -13,13 +13,13 @@ from os.path import basename, dirname
13
13
  def _main(): # PYCHOK no cover
14
14
 
15
15
  try:
16
- from pygeodesy import _isfrozen, pygeodesy_abspath, version
16
+ from pygeodesy import _isfrozen, printf, pygeodesy_abspath, version
17
17
  from pygeodesy.basics import _xgeographiclib, _xnumpy, _xscipy
18
18
  from pygeodesy.constants import _floats
19
+ from pygeodesy.internals import _name_version, _Pythonarchine, _usage
19
20
  from pygeodesy.interns import _COMMASPACE_, _DEPRECATED_, _pygeodesy_abspath_, \
20
- _pythonarchine, _SPACE_, _usage, _version_
21
- from pygeodesy.lazily import _a_l_l_, _all_deprecates, _all_imports, \
22
- isLazy, printf
21
+ _version_
22
+ from pygeodesy.lazily import isLazy, _dunder_all_, _all_deprecates, _all_imports
23
23
  from pygeodesy.streprs import Fmt
24
24
 
25
25
  def _p(name_value):
@@ -30,7 +30,7 @@ def _main(): # PYCHOK no cover
30
30
  ('isLazy', isLazy),
31
31
  ('_isfrozen', _isfrozen),
32
32
  ('_floats', len(_floats)),
33
- (_a_l_l_, len(_all_imports())),
33
+ (_dunder_all_, len(_all_imports())),
34
34
  (_DEPRECATED_, len(_all_deprecates())))]
35
35
 
36
36
  def _nv(_xpkg, v):
@@ -39,9 +39,9 @@ def _main(): # PYCHOK no cover
39
39
  except ImportError:
40
40
  pkg = None
41
41
  if pkg is not None:
42
- v.append(_SPACE_(pkg.__name__, pkg.__version__))
42
+ v.append(_name_version(pkg))
43
43
 
44
- v = _pythonarchine()
44
+ v = _Pythonarchine()
45
45
  _nv(_xgeographiclib, v)
46
46
  _nv(_xnumpy, v)
47
47
  _nv(_xscipy, v)
@@ -50,8 +50,7 @@ def _main(): # PYCHOK no cover
50
50
  printf('%s%s (%s)', x, _COMMASPACE_.join(p), _COMMASPACE_.join(v))
51
51
 
52
52
  except ImportError:
53
- from pygeodesy.interns import _usage
54
- from pygeodesy.lazily import printf
53
+ from pygeodesy.internals import printf, _usage
55
54
  printf(_usage(__file__))
56
55
 
57
56
 
pygeodesy/albers.py CHANGED
@@ -24,11 +24,11 @@ from pygeodesy.errors import _ValueError, _xkwds
24
24
  from pygeodesy.fmath import hypot, hypot1, sqrt3
25
25
  from pygeodesy.fsums import Fsum, _Fsum1f_, fsum1f_
26
26
  from pygeodesy.interns import NN, _COMMASPACE_, _datum_, _gamma_, _k0_, \
27
- _lat_, _lat1_, _lat2_, _lon_, _name_, _not_, \
28
- _negative_, _scale_, _SPACE_, _x_, _y_
27
+ _lat_, _lat1_, _lat2_, _lon_, _negative_, \
28
+ _scale_, _SPACE_, _x_, _y_
29
29
  from pygeodesy.karney import _diff182, _norm180, _signBit
30
30
  from pygeodesy.lazily import _ALL_DOCS, _ALL_LAZY
31
- from pygeodesy.named import _NamedBase, _NamedTuple, _Pass
31
+ from pygeodesy.named import _name2__, _NamedBase, _NamedTuple, _Pass
32
32
  from pygeodesy.props import deprecated_Property_RO, Property_RO, _update_all
33
33
  from pygeodesy.streprs import Fmt, strs, unstr
34
34
  from pygeodesy.units import Bearing, Float_, Lat, Lat_, Lon, Meter, Scalar_
@@ -38,7 +38,7 @@ from pygeodesy.utily import atan1, atan1d, degrees360, sincos2, sincos2d, \
38
38
  from math import atan2, atanh, degrees, fabs, radians, sqrt
39
39
 
40
40
  __all__ = _ALL_LAZY.albers
41
- __version__ = '24.04.14'
41
+ __version__ = '24.05.21'
42
42
 
43
43
  _k1_ = 'k1'
44
44
  _NUMIT = 8 # XXX 4?
@@ -111,12 +111,12 @@ class _AlbersBase(_NamedBase):
111
111
  # _sxi0 = None # (INTERNAL) sin(xi)
112
112
  # _txi0 = None # (INTERNAL) tan(xi)
113
113
 
114
- def __init__(self, sa1, ca1, sa2, ca2, k, datum, name):
114
+ def __init__(self, sa1, ca1, sa2, ca2, k, datum, **name):
115
115
  '''(INTERNAL) New C{AlbersEqualArea...} instance.
116
116
  '''
117
117
  qZ = self._qZ
118
118
  if datum not in (None, self._datum):
119
- self._datum = _ellipsoidal_datum(datum, name=name)
119
+ self._datum = _ellipsoidal_datum(datum, **name)
120
120
  qZ = _qZx(self)
121
121
  elif qZ is None:
122
122
  qZ = _qZx(_AlbersBase)
@@ -226,13 +226,13 @@ class _AlbersBase(_NamedBase):
226
226
 
227
227
  f = flattening
228
228
 
229
- def forward(self, lat, lon, lon0=0, name=NN):
229
+ def forward(self, lat, lon, lon0=0, **name):
230
230
  '''Convert a geodetic location to east- and northing.
231
231
 
232
232
  @arg lat: Latitude of the location (C{degrees}).
233
233
  @arg lon: Longitude of the location (C{degrees}).
234
234
  @kwarg lon0: Optional central meridian longitude (C{degrees}).
235
- @kwarg name: Optional name for the location (C{str}).
235
+ @kwarg name: Optional C{B{name}=NN} for the location (C{str}).
236
236
 
237
237
  @return: An L{Albers7Tuple}C{(x, y, lat, lon, gamma, scale, datum)},
238
238
  with C{lon} offset by B{C{lon0}} and reduced C{[-180,180]}.
@@ -277,7 +277,7 @@ class _AlbersBase(_NamedBase):
277
277
  if t:
278
278
  k0 = self._azik(t, ta)
279
279
  return Albers7Tuple(x, y, lat, lon, g, k0, self.datum,
280
- name=name or self.name)
280
+ name=self._name__(name))
281
281
 
282
282
  @Property_RO
283
283
  def ispolar(self):
@@ -343,16 +343,16 @@ class _AlbersBase(_NamedBase):
343
343
  _update_all(self)
344
344
  self._k0s(k0)
345
345
 
346
- def reverse(self, x, y, lon0=0, name=NN, LatLon=None, **LatLon_kwds):
346
+ def reverse(self, x, y, lon0=0, LatLon=None, **name_LatLon_kwds):
347
347
  '''Convert an east- and northing location to geodetic lat- and longitude.
348
348
 
349
349
  @arg x: Easting of the location (C{meter}).
350
350
  @arg y: Northing of the location (C{meter}).
351
351
  @kwarg lon0: Optional central meridian longitude (C{degrees}).
352
- @kwarg name: Optional name for the location (C{str}).
353
352
  @kwarg LatLon: Class to use (C{LatLon}) or C{None}.
354
- @kwarg LatLon_kwds: Optional, additional B{C{LatLon}} keyword
355
- arguments, ignored if C{B{LatLon} is None}.
353
+ @kwarg name_LatLon_kwds: Optional C{B{name}=NN} for the location
354
+ and optional, additional B{C{LatLon}} keyword
355
+ arguments, ignored if C{B{LatLon} is None}.
356
356
 
357
357
  @return: The geodetic (C{LatLon}) or if B{C{LatLon}} is C{None} an
358
358
  L{Albers7Tuple}C{(x, y, lat, lon, gamma, scale, datum)}.
@@ -397,7 +397,7 @@ class _AlbersBase(_NamedBase):
397
397
  lon += _norm180(lon0)
398
398
  lon = _norm180(lon)
399
399
 
400
- n = name or self.name
400
+ n, LatLon_kwds = _name2__(name_LatLon_kwds, _or_nameof=self)
401
401
  if LatLon is None:
402
402
  g = degrees360(s * th)
403
403
  if den:
@@ -540,11 +540,11 @@ class _AlbersBase(_NamedBase):
540
540
  (self.lat1,))
541
541
  t = strs(t, prec=prec)
542
542
  if k:
543
- t = t[:-1] + (Fmt.EQUAL(k, t[-1]),)
543
+ t = t[:-1] + (Fmt.EQUAL(k, t[-1]),)
544
544
  if self.datum != _WGS84:
545
- t += (Fmt.EQUAL(_datum_, self.datum),)
545
+ t += Fmt.EQUAL(datum=self.datum),
546
546
  if self.name:
547
- t += (Fmt.EQUAL(_name_, repr(self.name)),)
547
+ t += Fmt.EQUAL(name=repr(self.name)),
548
548
  return t if sep is None else sep.join(t)
549
549
 
550
550
  def _txif(self, ta): # in .Ellipsoid.auxAuthalic
@@ -575,20 +575,20 @@ class AlbersEqualArea(_AlbersBase):
575
575
  '''
576
576
  _k = _k0_
577
577
 
578
- def __init__(self, lat, k0=1, datum=_WGS84, name=NN):
578
+ def __init__(self, lat, k0=1, datum=_WGS84, **name):
579
579
  '''New L{AlbersEqualArea} projection.
580
580
 
581
581
  @arg lat: Standard parallel (C{degrees}).
582
582
  @kwarg k0: Azimuthal scale on the standard parallel (C{scalar}).
583
583
  @kwarg datum: Optional datum or ellipsoid (L{Datum}, L{Ellipsoid},
584
584
  L{Ellipsoid2} or L{a_f2Tuple}).
585
- @kwarg name: Optional name for the projection (C{str}).
585
+ @kwarg name: Optional C{B{name}=NN} for the projection (C{str}).
586
586
 
587
587
  @raise AlbersError: Invalid B{C{lat}}, B{C{k0}} or no convergence.
588
588
  '''
589
589
  self._lat1 = self._lat2 = lat = _Lat(lat1=lat)
590
- args = tuple(sincos2d(lat)) * 2 + (_Ks(k0=k0), datum, name)
591
- _AlbersBase.__init__(self, *args)
590
+ args = tuple(sincos2d(lat)) * 2 + (_Ks(k0=k0), datum)
591
+ _AlbersBase.__init__(self, *args, **name)
592
592
 
593
593
 
594
594
  class AlbersEqualArea2(_AlbersBase):
@@ -598,7 +598,7 @@ class AlbersEqualArea2(_AlbersBase):
598
598
  '''
599
599
  _k = _k1_
600
600
 
601
- def __init__(self, lat1, lat2, k1=1, datum=_WGS84, name=NN):
601
+ def __init__(self, lat1, lat2, k1=1, datum=_WGS84, **name):
602
602
  '''New L{AlbersEqualArea2} projection.
603
603
 
604
604
  @arg lat1: First standard parallel (C{degrees}).
@@ -606,14 +606,14 @@ class AlbersEqualArea2(_AlbersBase):
606
606
  @kwarg k1: Azimuthal scale on the standard parallels (C{scalar}).
607
607
  @kwarg datum: Optional datum or ellipsoid (L{Datum}, L{Ellipsoid},
608
608
  L{Ellipsoid2} or L{a_f2Tuple}).
609
- @kwarg name: Optional name for the projection (C{str}).
609
+ @kwarg name: Optional C{B{name}=NN} for the projection (C{str}).
610
610
 
611
611
  @raise AlbersError: Invalid B{C{lat1}}m B{C{lat2}}, B{C{k1}}
612
612
  or no convergence.
613
613
  '''
614
614
  self._lat1, self._lat2 = lats = _Lat(lat1=lat1), _Lat(lat2=lat2)
615
- args = tuple(sincos2d_(*lats)) + (_Ks(k1=k1), datum, name)
616
- _AlbersBase.__init__(self, *args)
615
+ args = tuple(sincos2d_(*lats)) + (_Ks(k1=k1), datum)
616
+ _AlbersBase.__init__(self, *args, **name)
617
617
 
618
618
 
619
619
  class AlbersEqualArea4(_AlbersBase):
@@ -624,7 +624,7 @@ class AlbersEqualArea4(_AlbersBase):
624
624
  '''
625
625
  _k = _k1_
626
626
 
627
- def __init__(self, slat1, clat1, slat2, clat2, k1=1, datum=_WGS84, name=NN):
627
+ def __init__(self, slat1, clat1, slat2, clat2, k1=1, datum=_WGS84, **name):
628
628
  '''New L{AlbersEqualArea4} projection.
629
629
 
630
630
  @arg slat1: Sine of first standard parallel (C{scalar}).
@@ -634,20 +634,20 @@ class AlbersEqualArea4(_AlbersBase):
634
634
  @kwarg k1: Azimuthal scale on the standard parallels (C{scalar}).
635
635
  @kwarg datum: Optional datum or ellipsoid (L{Datum}, L{Ellipsoid},
636
636
  L{Ellipsoid2} or L{a_f2Tuple}).
637
- @kwarg name: Optional name for the projection (C{str}).
637
+ @kwarg name: Optional C{B{name}=NN} for the projection (C{str}).
638
638
 
639
639
  @raise AlbersError: Negative B{C{clat1}} or B{C{clat2}}, B{C{slat1}}
640
640
  and B{C{slat2}} have opposite signs (hemispheres),
641
641
  invalid B{C{k1}} or no convergence.
642
642
  '''
643
- def _Lat_s_c3(name, s, c):
644
- r = Float_(hypot(s, c), name=name, Error=AlbersError)
645
- L = _Lat(atan1d(s, c), name=name)
643
+ def _Lat_s_c3(n, s, c):
644
+ r = Float_(hypot(s, c), name=n, Error=AlbersError)
645
+ L = _Lat( atan1d(s, c), name=n)
646
646
  return L, (s / r), (c / r)
647
647
 
648
648
  self._lat1, sa1, ca1 = _Lat_s_c3(_lat1_, slat1, clat1)
649
649
  self._lat2, sa2, ca2 = _Lat_s_c3(_lat2_, slat2, clat2)
650
- _AlbersBase.__init__(self, sa1, ca1, sa2, ca2, _Ks(k1=k1), datum, name)
650
+ _AlbersBase.__init__(self, sa1, ca1, sa2, ca2, _Ks(k1=k1), datum, **name)
651
651
 
652
652
 
653
653
  class AlbersEqualAreaCylindrical(_AlbersBase):
@@ -656,16 +656,16 @@ class AlbersEqualAreaCylindrical(_AlbersBase):
656
656
  '''
657
657
  _lat1 = _lat2 = _Lat(lat1=_0_0)
658
658
 
659
- def __init__(self, lat=_0_0, datum=_WGS84, name=NN):
659
+ def __init__(self, lat=_0_0, datum=_WGS84, **name):
660
660
  '''New L{AlbersEqualAreaCylindrical} projection.
661
661
 
662
662
  @kwarg lat: Standard parallel (C{0 degrees} I{fixed}).
663
663
  @kwarg datum: Optional datum or ellipsoid (L{Datum}, L{Ellipsoid},
664
664
  L{Ellipsoid2} or L{a_f2Tuple}).
665
- @kwarg name: Optional name for the projection (C{str}).
665
+ @kwarg name: Optional C{B{name}=NN} for the projection (C{str}).
666
666
  '''
667
667
  _xlat(lat, _0_0, AlbersEqualAreaCylindrical)
668
- _AlbersBase.__init__(self, _0_0, _1_0, _0_0, _1_0, 1, datum, name)
668
+ _AlbersBase.__init__(self, _0_0, _1_0, _0_0, _1_0, 1, datum, **name)
669
669
 
670
670
 
671
671
  class AlbersEqualAreaNorth(_AlbersBase):
@@ -674,16 +674,16 @@ class AlbersEqualAreaNorth(_AlbersBase):
674
674
  '''
675
675
  _lat1 = _lat2 = _Lat(lat1=_90_0)
676
676
 
677
- def __init__(self, lat=_90_0, datum=_WGS84, name=NN):
677
+ def __init__(self, lat=_90_0, datum=_WGS84, **name):
678
678
  '''New L{AlbersEqualAreaNorth} projection.
679
679
 
680
680
  @kwarg lat: Standard parallel (C{90 degrees} I{fixed}).
681
681
  @kwarg datum: Optional datum or ellipsoid (L{Datum}, L{Ellipsoid},
682
682
  L{Ellipsoid2} or L{a_f2Tuple}).
683
- @kwarg name: Optional name for the projection (C{str}).
683
+ @kwarg name: Optional C{B{name}=NN} for the projection (C{str}).
684
684
  '''
685
685
  _xlat(lat, _90_0, AlbersEqualAreaNorth)
686
- _AlbersBase.__init__(self, _1_0, _0_0, _1_0, _0_0, 1, datum, name)
686
+ _AlbersBase.__init__(self, _1_0, _0_0, _1_0, _0_0, 1, datum, **name)
687
687
 
688
688
 
689
689
  class AlbersEqualAreaSouth(_AlbersBase):
@@ -692,16 +692,16 @@ class AlbersEqualAreaSouth(_AlbersBase):
692
692
  '''
693
693
  _lat1 = _lat2 = _Lat(lat1=_N_90_0)
694
694
 
695
- def __init__(self, lat=_N_90_0, datum=_WGS84, name=NN):
695
+ def __init__(self, lat=_N_90_0, datum=_WGS84, **name):
696
696
  '''New L{AlbersEqualAreaSouth} projection.
697
697
 
698
698
  @kwarg lat: Standard parallel (C{-90 degrees} I{fixed}).
699
699
  @kwarg datum: Optional datum or ellipsoid (L{Datum}, L{Ellipsoid},
700
700
  L{Ellipsoid2} or L{a_f2Tuple}).
701
- @kwarg name: Optional name for the projection (C{str}).
701
+ @kwarg name: Optional C{B{name}=NN} for the projection (C{str}).
702
702
  '''
703
703
  _xlat(lat, _N_90_0, AlbersEqualAreaSouth)
704
- _AlbersBase.__init__(self, _N_1_0, _0_0, _N_1_0, _0_0, 1, datum, name)
704
+ _AlbersBase.__init__(self, _N_1_0, _0_0, _N_1_0, _0_0, 1, datum, **name)
705
705
 
706
706
 
707
707
  class Albers7Tuple(_NamedTuple):
@@ -831,8 +831,8 @@ def _xlat(lat, f, where):
831
831
  '''(INTERNAL) check fixed C{lat}.
832
832
  '''
833
833
  if lat is not f and _Lat(lat=lat) != f:
834
- t = unstr(where.__name__, lat=lat)
835
- raise AlbersError(t, txt=_not_(f))
834
+ t = unstr(where, lat=lat)
835
+ raise AlbersError(t, txt_not_=f)
836
836
 
837
837
 
838
838
  __all__ += _ALL_DOCS(_AlbersBase)
@@ -29,7 +29,7 @@ from pygeodesy.lazily import _ALL_OTHER
29
29
  # no modules: auxAngle, auxDLat, auxDST, auxily, auxLat
30
30
  __all__ = _ALL_OTHER(Aux, AuxAngle, AuxDLat, AuxDST, AuxLat,
31
31
  AuxBeta, AuxChi, AuxMu, AuxPhi, AuxTheta, AuxXi)
32
- __version__ = '23.12.07'
32
+ __version__ = '24.05.24'
33
33
 
34
34
  # **) MIT License
35
35
  #
@@ -5,7 +5,7 @@ u'''Print L{auxilats} version, etc. using C{python -m pygeodesy.auxilats}.
5
5
  '''
6
6
 
7
7
  __all__ = ()
8
- __version__ = '23.08.05'
8
+ __version__ = '24.05.15'
9
9
 
10
10
 
11
11
  def _CXstats(): # PYCHOK no cover
@@ -23,12 +23,12 @@ def _CXstats(): # PYCHOK no cover
23
23
 
24
24
  def _main(): # PYCHOK no cover
25
25
 
26
- import os.path as os_path
26
+ import os.path as _os_path
27
27
 
28
28
  try:
29
29
  from pygeodesy import auxilats, printf, pygeodesy_abspath
30
- from pygeodesy.interns import _COMMASPACE_, _DOT_, _pythonarchine, \
31
- _SPACE_, _usage, _version_
30
+ from pygeodesy.internals import _name_version, _Pythonarchine, _usage
31
+ from pygeodesy.interns import _COMMASPACE_, _DOT_, _version_
32
32
  from pygeodesy.streprs import Fmt
33
33
 
34
34
  def _dot_attr(name, value):
@@ -37,18 +37,15 @@ def _main(): # PYCHOK no cover
37
37
  s = tuple(sorted(_CXstats().items()))
38
38
  p = [_dot_attr(*t) for t in (((_version_, auxilats.__version__),) + s)]
39
39
 
40
- def _name_version(pkg):
41
- return _SPACE_(pkg.__name__, pkg.__version__)
42
-
43
- v = _pythonarchine()
40
+ v = _Pythonarchine()
44
41
  try:
45
42
  import geographiclib
46
43
  v.append(_name_version(geographiclib))
47
44
  except ImportError:
48
45
  pass
49
46
 
50
- a = auxilats.__name__
51
- x = os_path.basename(pygeodesy_abspath)
47
+ a = auxilats.__name__
48
+ x = _os_path.basename(pygeodesy_abspath)
52
49
  if not a.startswith(x):
53
50
  a = _DOT_(x, a)
54
51
  printf('%s%s (%s)', a, _COMMASPACE_.join(p), _COMMASPACE_.join(v))