org.orekit.frames.transformations
Class HelmertTransformation

java.lang.Object
  extended by org.orekit.frames.transformations.HelmertTransformation
All Implemented Interfaces:
Serializable, TransformProvider

public class HelmertTransformation
extends Object
implements TransformProvider

Transformation class for geodetic systems.

The Helmert transformation is mainly used to convert between various realizations of geodetic frames, for example in the ITRF family.

The original Helmert transformation is a 14 parameters transform that includes translation, velocity, rotation, rotation rate and scale factor. The scale factor is useful for coordinates near Earth surface, but it cannot be extended to outer space as it would correspond to a non-unitary transform. Therefore, the scale factor is not used here.

Instances of this class are guaranteed to be immutable.

Since:
5.1
Author:
Luc Maisonobe
See Also:
Serialized Form

Constructor Summary
HelmertTransformation(AbsoluteDate epoch, double t1, double t2, double t3, double r1, double r2, double r3, double t1Dot, double t2Dot, double t3Dot, double r1Dot, double r2Dot, double r3Dot)
          Build a transform from its primitive operations.
 
Method Summary
 AbsoluteDate getEpoch()
          Get the reference epoch of the transform.
 Transform getTransform(AbsoluteDate date)
          Compute the transform at some date.
 Transform getTransform(AbsoluteDate date, boolean computeSpinDerivatives)
          Compute the transform at some date.
 Transform getTransform(AbsoluteDate date, FramesConfiguration config)
          Compute the transform at some date.
 Transform getTransform(AbsoluteDate date, FramesConfiguration config, boolean computeSpinDerivatives)
          Compute the transform at some date.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HelmertTransformation

public HelmertTransformation(AbsoluteDate epoch,
                             double t1,
                             double t2,
                             double t3,
                             double r1,
                             double r2,
                             double r3,
                             double t1Dot,
                             double t2Dot,
                             double t3Dot,
                             double r1Dot,
                             double r2Dot,
                             double r3Dot)
Build a transform from its primitive operations.

Parameters:
epoch - reference epoch of the transform
t1 - translation parameter along X axis (BEWARE, this is in mm)
t2 - translation parameter along Y axis (BEWARE, this is in mm)
t3 - translation parameter along Z axis (BEWARE, this is in mm)
r1 - rotation parameter around X axis (BEWARE, this is in mas)
r2 - rotation parameter around Y axis (BEWARE, this is in mas)
r3 - rotation parameter around Z axis (BEWARE, this is in mas)
t1Dot - rate of translation parameter along X axis (BEWARE, this is in mm/y)
t2Dot - rate of translation parameter along Y axis (BEWARE, this is in mm/y)
t3Dot - rate of translation parameter along Z axis (BEWARE, this is in mm/y)
r1Dot - rate of rotation parameter around X axis (BEWARE, this is in mas/y)
r2Dot - rate of rotation parameter around Y axis (BEWARE, this is in mas/y)
r3Dot - rate of rotation parameter around Z axis (BEWARE, this is in mas/y)
Method Detail

getEpoch

public AbsoluteDate getEpoch()
Get the reference epoch of the transform.

Returns:
reference epoch of the transform

getTransform

public Transform getTransform(AbsoluteDate date)
                       throws OrekitException
Compute the transform at some date.

Specified by:
getTransform in interface TransformProvider
Parameters:
date - date at which the transform is desired
Returns:
computed transform at specified date
Throws:
OrekitException - if the default config cannot be retrieved

getTransform

public Transform getTransform(AbsoluteDate date,
                              FramesConfiguration config)
                       throws OrekitException
Compute the transform at some date.

Specified by:
getTransform in interface TransformProvider
Parameters:
date - date at which the transform is desired
config - frames configuration to use
Returns:
computed transform at specified date
Throws:
OrekitException - if problem in the frame configuration

getTransform

public Transform getTransform(AbsoluteDate date,
                              boolean computeSpinDerivatives)
                       throws OrekitException
Compute the transform at some date.

Specified by:
getTransform in interface TransformProvider
Parameters:
date - date at which the transform is desired
computeSpinDerivatives - Spin derivatives are computed : true or not : false
Returns:
computed transform at specified date
Throws:
OrekitException - if default frame configuration cannot be retrieved

getTransform

public Transform getTransform(AbsoluteDate date,
                              FramesConfiguration config,
                              boolean computeSpinDerivatives)
                       throws OrekitException
Compute the transform at some date.

Specified by:
getTransform in interface TransformProvider
Parameters:
date - date at which the transform is desired
config - frames configuration to use
computeSpinDerivatives - Spin derivatives are computed : true or not : false
Returns:
computed transform at specified date
Throws:
OrekitException - if problem in the frame configuration


Copyright © 2017 CNES. All Rights Reserved.