geonative-proj
Pure-Rust projection engine for the geonative geospatial library. No PROJ, no C dep.
v0.1 coverage
- Spherical Mercator: EPSG:4326 ↔ EPSG:3857
- Transverse Mercator (Krüger n-series, 6th order) — shared between:
- WGS84/UTM zones 1–60 N+S (EPSG:32601–32760)
- GDA2020/MGA zones 46–59 (EPSG:7846–7859) — TM on GRS80
- GDA2020 geographic (EPSG:7844) treated as identity with EPSG:4326 — ~1.5 m caveat for visualisation; full Helmert 7-parameter transform deferred to v0.2.
Usage
use Transformer;
use Coord;
let t = from_epsg?; // Vicmap MGA Zone 55 → WGS84
let mut c = xy;
t.transform?;
println!; // ~144.96, -37.81
# Ok::
Roadmap
- Lambert Conformal Conic, Albers Equal Area, Polar Stereographic
- WKT / PROJJSON parsing for
Crs::WktandCrs::Projjson - NTv2 grid shifts (optional
geonative-proj-gridssibling crate) - Full Helmert 7-param datum transforms (4326 ↔ 7844 survey-grade)