Function TransverseMercator.fromParameters

Prepare a bounded Transverse Mercator operation.

static TransverseMercator fromParameters(
  const Ellipsoid!T ellipsoid,
  const Latitude!T latitudeOfNaturalOrigin,
  const Longitude!T longitudeOfNaturalOrigin,
  const T scaleFactorAtNaturalOrigin,
  const T falseEasting,
  const T falseNorthing
) @safe;

Parameters

NameDescription
ellipsoid Valid spherical or oblate ellipsoid with flattening 0 <= f <= 0.01; its semi-major axis defines the linear unit.
latitudeOfNaturalOrigin EPSG 8801 latitude of natural origin.
longitudeOfNaturalOrigin EPSG 8802 longitude of natural origin.
scaleFactorAtNaturalOrigin Finite positive EPSG 8805 scale factor.
falseEasting Finite EPSG 8806 false easting in the ellipsoid linear unit.
falseNorthing Finite EPSG 8807 false northing in the same linear unit.

Returns

The prepared projection.

Throws

GeodesyValueException when the parameters or derived constants cannot form a supported projection.

Example

Example preparing a reusable Transverse Mercator projection.

import geodesy;
const projection = TransverseMercator!double.fromParameters(
    wgs84!double(),
    Latitude!double.fromDegrees(0.0),
    Longitude!double.fromDegrees(15.0),
    0.9996,
    500_000.0,
    0.0);
assert(projection.scaleFactorAtNaturalOrigin == 0.9996);