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 co-located
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 co-located
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
.