public final class GeometryTransformer extends Object
Modifier and Type  Class and Description 

static class 
GeometryTransformer.Advanced
Contains methods to obtain evaluators for less common situations.

Modifier and Type  Method and Description 

static AxesEvaluator 
getAxesTransformation(Axes from,
Axes to)
Gets an evaluator that can be used to find the transformation from one axes to another.

static AxesEvaluator 
getAxesTransformation(Axes from,
Axes to,
EvaluatorGroup group)
Gets an evaluator that can be used to find the transformation from one axes to another.

static ReferenceFrameEvaluator 
getReferenceFrameTransformation(ReferenceFrame from,
ReferenceFrame to)
Gets an evaluator that can evaluate the transformation between two reference frames.

static ReferenceFrameEvaluator 
getReferenceFrameTransformation(ReferenceFrame from,
ReferenceFrame to,
EvaluatorGroup group)
Gets an evaluator that can evaluate the transformation between two reference frames.

static PointEvaluator 
observePoint(Point point,
ReferenceFrame inFrame)
Gets an evaluator that can be used to find the
Motion <Cartesian >
of this point in the new Frame (get / set ) at a given JulianDate . 
static PointEvaluator 
observePoint(Point point,
ReferenceFrame inFrame,
EvaluatorGroup group)
Gets an evaluator that can be used to find the
Motion <Cartesian >
of this point in the new Frame (get / set ) at a given JulianDate . 
static VectorEvaluator 
observeVector(Vector vector,
Axes inAxes)
Gets an evaluator that can be used to find the
Motion <Cartesian >
of this vector in a given axes at a given JulianDate . 
static VectorEvaluator 
observeVector(Vector vector,
Axes inAxes,
EvaluatorGroup group)
Gets an evaluator that can be used to find the
Motion <Cartesian >
of this vector in a given axes at a given JulianDate . 
@Nonnull public static AxesEvaluator getAxesTransformation(@Nonnull Axes from, @Nonnull Axes to)
from
 The Axes that the returned evaluator should transform from.to
 The Axes that the returned evaluator should transform to.from
axes in order to express that vector in the to
axes.ArgumentNullException
 Thrown when from
or to
is null
.@Nonnull public static AxesEvaluator getAxesTransformation(@Nonnull Axes from, @Nonnull Axes to, @Nonnull EvaluatorGroup group)
from
 The Axes that the returned evaluator should transform from.to
 The Axes that the returned evaluator should transform to.group
 The group with which to associate the new evaluator. By grouping evaluators
that are often evaluated at the same Julian dates, common computations can be performed only once
for the entire group instead of multiple times for each evaluator.from
axes in order to express that vector in the to
axes.ArgumentNullException
 Thrown when from
, to
, or group
is null
.@Nonnull public static ReferenceFrameEvaluator getReferenceFrameTransformation(@Nonnull ReferenceFrame from, @Nonnull ReferenceFrame to)
from
 The ReferenceFrame
that the returned evaluator should transform from.to
 The ReferenceFrame
that the returned evaluator should transform to.from
reference frame in order to express that point in the to
reference frame.ArgumentNullException
 Thrown when from
or to
is null
.@Nonnull public static ReferenceFrameEvaluator getReferenceFrameTransformation(@Nonnull ReferenceFrame from, @Nonnull ReferenceFrame to, @Nonnull EvaluatorGroup group)
from
 The ReferenceFrame
that the returned evaluator should transform from.to
 The ReferenceFrame
that the returned evaluator should transform to.group
 The group with which to associate the new evaluator. By grouping evaluators
that are often evaluated at the same Julian dates, common computations can be performed only once
for the entire group instead of multiple times for each evaluator.from
reference frame in order to express that point in the to
reference frame.ArgumentNullException
 Thrown when from
, to
, or group
is null
.@Nonnull public static PointEvaluator observePoint(@Nonnull Point point, @Nonnull ReferenceFrame inFrame)
Motion
<Cartesian
>
of this point in the new Frame
(get
/ set
) at a given JulianDate
.
The motion will also express any derivatives in the new frame if requested.point
 The point to observe.inFrame
 The reference frame in which to observe the point.ArgumentNullException
 Thrown when point
or inFrame
is null
.@Nonnull public static PointEvaluator observePoint(@Nonnull Point point, @Nonnull ReferenceFrame inFrame, @Nonnull EvaluatorGroup group)
Motion
<Cartesian
>
of this point in the new Frame
(get
/ set
) at a given JulianDate
.
The motion will also express any derivatives in the new frame if requested.point
 The point to observe.inFrame
 The reference frame in which to observe the point.group
 The group with which to associate the new evaluator. By grouping evaluators
that are often evaluated at the same Julian dates, common computations can be performed only once
for the entire group instead of multiple times for each evaluator.ArgumentNullException
 Thrown when point
, inFrame
, or group
is null
.@Nonnull public static VectorEvaluator observeVector(@Nonnull Vector vector, @Nonnull Axes inAxes)
Motion
<Cartesian
>
of this vector in a given axes at a given JulianDate
. Note that this will not account for any
translational effects and the axes are considered to be the vector's basis. So if the vector is representing
a velocity or boresight vector, observing the vector in the axes of a reference frame which is rotating and translating
with respect to the vector's axes will only take into account the relative rotation as if the two basis axes were colocated
when computing the vector's derivatives. To obtain a vector and its derivatives in a different frame,
the vector needs to be created in that frame.vector
 The vector to observe.inAxes
 The axes in which to observe the vector.ArgumentNullException
 Thrown when vector
or inAxes
is null
.@Nonnull public static VectorEvaluator observeVector(@Nonnull Vector vector, @Nonnull Axes inAxes, @Nonnull EvaluatorGroup group)
Motion
<Cartesian
>
of this vector in a given axes at a given JulianDate
. Note that this will not account for any
translational effects and the axes are considered to be the vector's basis. So if the vector is representing
a velocity or boresight vector, observing the vector in the axes of a reference frame which is rotating and translating
with respect to the vector's axes will only take into account the relative rotation as if the two basis axes were colocated
when computing the vector's derivatives. To obtain a vector and its derivatives in a different frame,
the vector needs to be created in that frame.vector
 The vector to observe.inAxes
 The axes in which to observe the vector.group
 The group with which to associate the new evaluator. By grouping evaluators
that are often evaluated at the same Julian dates, common computations can be performed only once
for the entire group instead of multiple times for each evaluator.ArgumentNullException
 Thrown when vector
, inAxes
, or group
is null
.