HelmertParameters

class geodetic_engine.geodesy.utils.HelmertParameters[source]

Bases: object

A seven parameter Helmert transformation, in SI units.

Stored in the position vector convention regardless of how the source method stated it, so that two sets can be composed without re-checking which way the rotations point.

tx

X-axis translation, metres.

ty

Y-axis translation, metres.

tz

Z-axis translation, metres.

rx

X-axis rotation, radians, position vector convention.

ry

Y-axis rotation, radians, position vector convention.

rz

Z-axis rotation, radians, position vector convention.

scale

Scale difference as a fraction, so 1 ppm is 1e-6.

Example

>>> operation = CoordinateOperation.from_authority("EPSG", 1147)
>>> helmert_parameters(operation).rotations_arc_seconds()[0]
-0.390459...
rotations_arc_seconds()[source]

The three rotations in arc-seconds, the unit EPSG and PROJ state.

Return type:

tuple[float, float, float]

scale_ppm()[source]

The scale difference in parts per million.

Return type:

float

proj_string()[source]

Render as a +proj=helmert step, in PROJ’s units.

Return type:

str

Returns:

A PROJ pipeline step, rotations in arc-seconds and scale in ppm.

__init__(tx, ty, tz, rx, ry, rz, scale)