vibeproj.projections.gnomonic

Gnomonic projection.

All great circles map to straight lines. Used for navigation and seismology. Only displays less than one hemisphere.

Classes

Gnomonic

Base class for all map projections.

Module Contents

class vibeproj.projections.gnomonic.Gnomonic

Bases: vibeproj.projections.base.Projection

Base 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 = 'gnom'
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.