public class AttitudeEndoints extends Object implements AttitudeBuilder
This class provides a bridge between two different views of attitude definition. In both views, there is an external frame, based on either celestial body or orbit-relative and there is a spacecraft body frame.
Orekit attitude view: attitude is always from external to
spacecraft body| Modifier and Type | Field and Description |
|---|---|
static String |
A2B
Constant for A → B diraction.
|
static String |
B2A
Constant for A ← B direction.
|
| Constructor and Description |
|---|
AttitudeEndoints() |
| Modifier and Type | Method and Description |
|---|---|
<T extends CalculusFieldElement<T>> |
build(Frame frame,
FieldPVCoordinatesProvider<T> pvProv,
TimeStampedFieldAngularCoordinates<T> rawAttitude)
Build a filtered attitude.
|
Attitude |
build(Frame frame,
PVCoordinatesProvider pvProv,
TimeStampedAngularCoordinates rawAttitude)
Build a filtered attitude.
|
void |
checkExternalFrame(Enum<?> aKey,
Enum<?> bKey)
Check external frame is properly initialized.
|
void |
checkMandatoryEntriesExceptExternalFrame(Enum<?> aKey,
Enum<?> bKey,
Enum<?> dirKey)
Check is mandatory entries except external frame have been initialized.
|
FrameFacade |
getExternalFrame()
Get the external frame.
|
FrameFacade |
getFrameA()
Get frame A.
|
FrameFacade |
getFrameB()
Get frame B.
|
FrameFacade |
getSpacecraftBodyFrame()
Get the spacecraft body frame.
|
boolean |
isA2b()
|
boolean |
isCompatibleWith(AttitudeEndoints other)
Check if a endpoint is compatible with another one.
|
boolean |
isExternal2SpacecraftBody()
Check if attitude is from external frame to spacecraft body frame.
|
void |
setA2b(boolean a2b)
Set rotation direction.
|
void |
setFrameA(FrameFacade frameA)
Set frame A.
|
void |
setFrameB(FrameFacade frameB)
Set frame B.
|
String |
toString() |
public static final String A2B
public static final String B2A
public void checkExternalFrame(Enum<?> aKey, Enum<?> bKey)
aKey - key for frame AbKey - key for frame Bpublic void checkMandatoryEntriesExceptExternalFrame(Enum<?> aKey, Enum<?> bKey, Enum<?> dirKey)
Either frame A or frame B must be initialized with a spacecraft body frame.
This method should throw an exception if some mandatory entry is missing
aKey - key for frame AbKey - key for frame BdirKey - key for directionpublic void setFrameA(FrameFacade frameA)
frameA - frame Apublic FrameFacade getFrameA()
public void setFrameB(FrameFacade frameB)
frameB - frame Bpublic FrameFacade getFrameB()
public void setA2b(boolean a2b)
public FrameFacade getExternalFrame()
public FrameFacade getSpacecraftBodyFrame()
public boolean isExternal2SpacecraftBody()
Mandatory entries must have been initialized properly to non-null
values before this method is called, otherwise NullPointerException
will be thrown.
public boolean isCompatibleWith(AttitudeEndoints other)
Endpoins are compatible if they refer o the same frame names, in the same order and in the same direction.
other - other endpoints to check againstpublic Attitude build(Frame frame, PVCoordinatesProvider pvProv, TimeStampedAngularCoordinates rawAttitude)
build in interface AttitudeBuilderframe - reference frame with respect to which attitude must be definedpvProv - provider for spacecraft position and velocityrawAttitude - raw rotation/rotation rate/rotation accelerationpublic <T extends CalculusFieldElement<T>> FieldAttitude<T> build(Frame frame, FieldPVCoordinatesProvider<T> pvProv, TimeStampedFieldAngularCoordinates<T> rawAttitude)
build in interface AttitudeBuilderT - the type of the field elementsframe - reference frame with respect to which attitude must be definedpvProv - provider for spacecraft position and velocityrawAttitude - raw rotation/rotation rate/rotation accelerationCopyright © 2002-2022 CS GROUP. All rights reserved.