PythonSTB commited on
Commit
0d6ff0f
·
verified ·
1 Parent(s): 635ab2e

Upload pyproj/PYPROJ_USER_GUIDE.txt with huggingface_hub

Browse files
Files changed (1) hide show
  1. pyproj/PYPROJ_USER_GUIDE.txt +75 -0
pyproj/PYPROJ_USER_GUIDE.txt ADDED
@@ -0,0 +1,75 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ================================================================================
2
+ PYPROJ - USER GUIDE (Android Python STB) - Generated by RIMI
3
+ ================================================================================
4
+
5
+ WHAT THIS IS
6
+ ------------
7
+ pyproj 3.8.0 - Python interface to PROJ (cartographic projections and
8
+ coordinate transformations library). This package ships the pyproj Python
9
+ code, ten compiled Cython extension modules, the PROJ 9.8.1 shared library
10
+ (libproj.so, built from source for Android) and the PROJ datum database
11
+ (proj.db, 10 MB) plus support files, all inside ONE wheel per architecture:
12
+
13
+ pyproj-3.8.0-cp312-cp312-android_24_arm64_v8a.whl (real ARM64 phones)
14
+ pyproj-3.8.0-cp312-cp312-android_24_x86_64.whl (x86_64 emulators)
15
+
16
+ INSTALL
17
+ -------
18
+ 1. Install the wheel matching your device architecture via PipManager.
19
+ 2. Install `certifi` (pyproj's only runtime dependency) from its own
20
+ package - it is NOT bundled in this wheel (house rule: pure-Python
21
+ deps live in their own packages).
22
+ 3. No PROJ_DATA / PROJ_LIB setup needed: the wheel carries
23
+ pyproj/proj_dir/share/proj/proj.db and pyproj finds it automatically
24
+ (internal proj directory is preferred over env vars).
25
+
26
+ QUICK START
27
+ -----------
28
+ from pyproj import CRS, Transformer, Geod
29
+
30
+ # CRS objects (needs proj.db - vendored, works offline)
31
+ wgs84 = CRS.from_epsg(4326)
32
+
33
+ # coordinate transform: lon/lat -> Web-Mercator
34
+ t = Transformer.from_crs("EPSG:4326", "EPSG:3857", always_xy=True)
35
+ x, y = t.transform(12.0, 55.0) # -> (1335833.89, 7361866.11)
36
+
37
+ # geodesic on WGS84 ellipsoid (no DB needed, pure math in PROJ)
38
+ g = Geod(ellps="WGS84")
39
+ az12, az21, dist = g.inv(0.0, 0.0, 1.0, 0.0) # 1 deg on equator
40
+ print(dist) # 111319.49079327357 metres
41
+
42
+ # where the datum files live
43
+ from pyproj import datadir
44
+ print(datadir.get_data_dir()) # .../pyproj/proj_dir/share/proj
45
+
46
+ ANDROID NOTES / GOTCHAS
47
+ -----------------------
48
+ - The bundled libproj.so is preloaded automatically at
49
+ `import pyproj` (ctypes.CDLL of the wheel sibling). Never move or
50
+ rename pyproj/libproj.so inside site-packages.
51
+ - Network features (TransformerGroup downloads, projsync, grid CDN) need
52
+ internet AND are built WITHOUT curl support in this wheel: remote grid
53
+ download is unavailable. Everything that works from the vendored
54
+ proj.db + embedded math works fully offline.
55
+ - GeoTIFF grid support is disabled (TIFF off): transformations listed in
56
+ proj.db that require an external .tif grid raise a ProjError naming the
57
+ missing grid instead of silently mis-transforming. Standard
58
+ CRS-to-CRS work (incl. Copenhagen 4326->3857 above) needs no grids.
59
+ - Full 700 MB+ proj-data grid packs are NOT shipped (same as upstream
60
+ wheels). If you need a specific grid, push the .tif/.gsb next to
61
+ proj.db and call pyproj.datadir.append_data_dir(), or set PROJ_DATA.
62
+ - SQLite is statically linked INSIDE libproj.so: no extra .so to install.
63
+ - Tested API surface (see Test_Pyproj.py, 10 checks): import, version
64
+ strings, certifi presence, PROJ 9.8.1 linkage, proj.db vendoring, CRS
65
+ lookup, 4326->3857 known answer + roundtrip, geodesic inv/fwd known
66
+ answers, ellipsoid map listing.
67
+
68
+ VERSIONS INSIDE
69
+ ---------------
70
+ pyproj 3.8.0 (latest stable, 2026) | PROJ 9.8.1 (exact version upstream
71
+ 3.8.0 wheels bundle) | SQLite 3.53.4 (static) | Python 3.12 | API 24+.
72
+
73
+ ================================================================================
74
+ Generated by RIMI
75
+ ================================================================================