Package org.orekit.frames
Interface FieldStaticTransform<T extends CalculusFieldElement<T>>
-
- Type Parameters:
T
- the type of the field elements
- All Superinterfaces:
TimeStamped
- All Known Subinterfaces:
FieldKinematicTransform<T>
- All Known Implementing Classes:
FieldTransform
public interface FieldStaticTransform<T extends CalculusFieldElement<T>> extends TimeStamped
A transform that only includes translation and rotation. It is static in the sense that no rates thereof are included.- Since:
- 12.0
- Author:
- Bryan Cazabonne
- See Also:
FieldTransform
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description static <T extends CalculusFieldElement<T>>
FieldStaticTransform<T>compose(FieldAbsoluteDate<T> date, FieldStaticTransform<T> first, FieldStaticTransform<T> second)
Build a transform by combining two existing ones.static <T extends CalculusFieldElement<T>>
FieldRotation<T>compositeRotation(FieldStaticTransform<T> first, FieldStaticTransform<T> second)
Compute a composite rotation.static <T extends CalculusFieldElement<T>>
FieldVector3D<T>compositeTranslation(FieldStaticTransform<T> first, FieldStaticTransform<T> second)
Compute a composite translation.default FieldAbsoluteDate<T>
getFieldDate()
Get the Field date.static <T extends CalculusFieldElement<T>>
FieldStaticTransform<T>getIdentity(Field<T> field)
Get the identity static transform.FieldStaticTransform<T>
getInverse()
Get the inverse transform of the instance.FieldRotation<T>
getRotation()
Get the underlying elementary rotation.default FieldStaticTransform<T>
getStaticInverse()
Get the inverse transform of the instance in static form (without rates).FieldVector3D<T>
getTranslation()
Get the underlying elementary translation.static <T extends CalculusFieldElement<T>>
FieldStaticTransform<T>of(FieldAbsoluteDate<T> date, FieldRotation<T> rotation)
Create a new static transform from a rotation and zero translation.static <T extends CalculusFieldElement<T>>
FieldStaticTransform<T>of(FieldAbsoluteDate<T> date, FieldVector3D<T> translation)
Create a new static transform from a translation and rotation.static <T extends CalculusFieldElement<T>>
FieldStaticTransform<T>of(FieldAbsoluteDate<T> date, FieldVector3D<T> translation, FieldRotation<T> rotation)
Create a new static transform from a translation and rotation.static <T extends CalculusFieldElement<T>>
FieldStaticTransform<T>of(FieldAbsoluteDate<T> date, StaticTransform staticTransform)
Create a new static transform from anFieldAbsoluteDate
and aStaticTransform
.default FieldLine<T>
transformLine(FieldLine<T> line)
Transform a line.default FieldLine<T>
transformLine(Line line)
Transform a line.default FieldVector3D<T>
transformPosition(FieldVector3D<T> position)
Transform a position vector (including translation effects).default FieldVector3D<T>
transformPosition(Vector3D position)
Transform a position vector (including translation effects).default FieldVector3D<T>
transformVector(FieldVector3D<T> vector)
Transform a vector (ignoring translation effects).default FieldVector3D<T>
transformVector(Vector3D vector)
Transform a vector (ignoring translation effects).-
Methods inherited from interface org.orekit.time.TimeStamped
durationFrom, getDate
-
-
-
-
Method Detail
-
getIdentity
static <T extends CalculusFieldElement<T>> FieldStaticTransform<T> getIdentity(Field<T> field)
Get the identity static transform.- Type Parameters:
T
- type of the elements- Parameters:
field
- field used by default- Returns:
- identity transform.
-
transformPosition
default FieldVector3D<T> transformPosition(Vector3D position)
Transform a position vector (including translation effects).- Parameters:
position
- vector to transform- Returns:
- transformed position
-
transformPosition
default FieldVector3D<T> transformPosition(FieldVector3D<T> position)
Transform a position vector (including translation effects).- Parameters:
position
- vector to transform- Returns:
- transformed position
-
transformVector
default FieldVector3D<T> transformVector(Vector3D vector)
Transform a vector (ignoring translation effects).- Parameters:
vector
- vector to transform- Returns:
- transformed vector
-
transformVector
default FieldVector3D<T> transformVector(FieldVector3D<T> vector)
Transform a vector (ignoring translation effects).- Parameters:
vector
- vector to transform- Returns:
- transformed vector
-
transformLine
default FieldLine<T> transformLine(Line line)
Transform a line.- Parameters:
line
- to transform- Returns:
- transformed line
-
transformLine
default FieldLine<T> transformLine(FieldLine<T> line)
Transform a line.- Parameters:
line
- to transform- Returns:
- transformed line
-
getFieldDate
default FieldAbsoluteDate<T> getFieldDate()
Get the Field date. This default implementation is there so that no API is broken by a minor release. It is overloaded by native inheritors and shall be removed in the next major release.- Returns:
- Field date attached to the object
- Since:
- 12.1
-
getTranslation
FieldVector3D<T> getTranslation()
Get the underlying elementary translation.A transform can be uniquely represented as an elementary translation followed by an elementary rotation. This method returns this unique elementary translation.
- Returns:
- underlying elementary translation
-
getRotation
FieldRotation<T> getRotation()
Get the underlying elementary rotation.A transform can be uniquely represented as an elementary translation followed by an elementary rotation. This method returns this unique elementary rotation.
- Returns:
- underlying elementary rotation
-
getInverse
FieldStaticTransform<T> getInverse()
Get the inverse transform of the instance.- Returns:
- inverse transform of the instance
-
getStaticInverse
default FieldStaticTransform<T> getStaticInverse()
Get the inverse transform of the instance in static form (without rates). This enables to create a purely static inverse, as inheritors such asFieldTransform
may have a relatively computationally-heavy #getInverse() method.- Returns:
- inverse static transform of the instance
- Since:
- 12.1
-
compose
static <T extends CalculusFieldElement<T>> FieldStaticTransform<T> compose(FieldAbsoluteDate<T> date, FieldStaticTransform<T> first, FieldStaticTransform<T> second)
Build a transform by combining two existing ones.Note that the dates of the two existing transformed are ignored, and the combined transform date is set to the date supplied in this constructor without any attempt to shift the raw transforms. This is a design choice allowing user full control of the combination.
- Type Parameters:
T
- type of the elements- Parameters:
date
- date of the transformfirst
- first transform appliedsecond
- second transform applied- Returns:
- the newly created static transform that has the same effect as
applying
first
, thensecond
. - See Also:
of(FieldAbsoluteDate, FieldVector3D, FieldRotation)
-
compositeTranslation
static <T extends CalculusFieldElement<T>> FieldVector3D<T> compositeTranslation(FieldStaticTransform<T> first, FieldStaticTransform<T> second)
Compute a composite translation.- Type Parameters:
T
- the type of the field elements- Parameters:
first
- first applied transformsecond
- second applied transform- Returns:
- translation part of the composite transform
-
compositeRotation
static <T extends CalculusFieldElement<T>> FieldRotation<T> compositeRotation(FieldStaticTransform<T> first, FieldStaticTransform<T> second)
Compute a composite rotation.- Type Parameters:
T
- the type of the field elements- Parameters:
first
- first applied transformsecond
- second applied transform- Returns:
- rotation part of the composite transform
-
of
static <T extends CalculusFieldElement<T>> FieldStaticTransform<T> of(FieldAbsoluteDate<T> date, FieldRotation<T> rotation)
Create a new static transform from a rotation and zero translation.- Type Parameters:
T
- type of the elements- Parameters:
date
- of translation.rotation
- to apply after the translation. That is after translating applying this rotation produces positions expressed in the new frame.- Returns:
- the newly created static transform.
- See Also:
of(FieldAbsoluteDate, FieldVector3D, FieldRotation)
-
of
static <T extends CalculusFieldElement<T>> FieldStaticTransform<T> of(FieldAbsoluteDate<T> date, FieldVector3D<T> translation)
Create a new static transform from a translation and rotation.- Type Parameters:
T
- type of the elements- Parameters:
date
- of translation.translation
- to apply, expressed in the old frame. That is, the opposite of the coordinates of the new origin in the old frame.- Returns:
- the newly created static transform.
- See Also:
of(FieldAbsoluteDate, FieldVector3D, FieldRotation)
-
of
static <T extends CalculusFieldElement<T>> FieldStaticTransform<T> of(FieldAbsoluteDate<T> date, StaticTransform staticTransform)
Create a new static transform from anFieldAbsoluteDate
and aStaticTransform
.- Type Parameters:
T
- type of the elements- Parameters:
date
- of translation.staticTransform
- to apply- Returns:
- the newly created static transform.
- See Also:
of(FieldAbsoluteDate, FieldVector3D, FieldRotation)
-
of
static <T extends CalculusFieldElement<T>> FieldStaticTransform<T> of(FieldAbsoluteDate<T> date, FieldVector3D<T> translation, FieldRotation<T> rotation)
Create a new static transform from a translation and rotation.- Type Parameters:
T
- type of the elements- Parameters:
date
- of translation.translation
- to apply, expressed in the old frame. That is, the opposite of the coordinates of the new origin in the old frame.rotation
- to apply after the translation. That is after translating applying this rotation produces positions expressed in the new frame.- Returns:
- the newly created static transform.
- See Also:
compose(FieldAbsoluteDate, FieldStaticTransform, FieldStaticTransform)
,of(FieldAbsoluteDate, FieldRotation)
,of(FieldAbsoluteDate, FieldVector3D)
-
-