vibeproj.projections.oblique_mercator

Hotine Oblique Mercator projection.

Conformal oblique cylindrical projection used for national grids where the area of interest lies along a great circle at an oblique angle (e.g. Malaysia RSO, Alaska zone 1). Supports EPSG variants A and B.

Math follows Snyder “Map Projections: A Working Manual” pp. 274-278 and the EPSG Guidance Note 7-2, section 2.4.3.

Classes

ObliqueMercator

Conformal oblique cylindrical projection (Hotine variants A and B).

Module Contents

class vibeproj.projections.oblique_mercator.ObliqueMercator

Bases: vibeproj.projections.base.Projection

Conformal oblique cylindrical projection (Hotine variants A and B).

name = 'omerc'
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.