Upload pyproj/PYPROJ_USER_GUIDE.txt with huggingface_hub
Browse files- 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 |
+
================================================================================
|