vibeproj.projections.equal_earth¶
Equal Earth projection (2018).
Modern equal-area pseudocylindrical projection with pleasing aesthetics. Polynomial formulas — closed-form forward and inverse. EPSG: 8857, 8858, 8859.
On the ellipsoid the input geodetic latitude is first converted to authalic latitude (β) so that equal-area properties are preserved. The polynomial formulas then operate on β. Inverse recovers geodetic latitude from β via the iterative q-inversion used by LAEA/CEA.
Classes¶
Base class for all map projections. |
Module Contents¶
- class vibeproj.projections.equal_earth.EqualEarth¶
Bases:
vibeproj.projections.base.ProjectionBase class for all map projections.
Subclasses implement forward/inverse transforms that operate on arrays of coordinates. The xp parameter is the array module (numpy or cupy).
Projection math operates in radians on the ellipsoid. The pipeline handles degree/radian conversion, axis swapping, and false easting/northing.
- name = 'eqearth'¶
- setup(params: vibeproj.crs.ProjectionParams) dict¶
Compute derived parameters from projection params.
Called once at construction time. Returns a dict of computed params that will be passed to forward/inverse.
- forward(lam, phi, params, computed, xp)¶
Forward projection: geographic (lon, lat in radians) -> projected (x, y in meters).
lam: longitude relative to central meridian (radians), array phi: latitude (radians), array Returns (x, y) in projection-native units (before false easting/northing and scale).
- inverse(x, y, params, computed, xp)¶
Inverse projection: projected (x, y) -> geographic (lon, lat in radians).
x, y: projection-native units (after removing false easting/northing and scale). Returns (lam, phi) in radians, with lam relative to central meridian.