Package org.orekit.attitudes
Class GroundPointing
- java.lang.Object
-
- org.orekit.attitudes.GroundPointing
-
- All Implemented Interfaces:
AttitudeProvider
- Direct Known Subclasses:
BodyCenterPointing
,LofOffsetPointing
,NadirPointing
,TargetPointing
,YawCompensation
,YawSteering
public abstract class GroundPointing extends Object implements AttitudeProvider
Base class for ground pointing attitude providers.This class is a basic model for different kind of ground pointing attitude providers, such as : body center pointing, nadir pointing, target pointing, etc...
The object
GroundPointing
is guaranteed to be immutable.- Author:
- Véronique Pommier-Maurussane
- See Also:
AttitudeProvider
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
GroundPointing(Frame inertialFrame, Frame bodyFrame)
Default constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description <T extends CalculusFieldElement<T>>
FieldAttitude<T>getAttitude(FieldPVCoordinatesProvider<T> pvProv, FieldAbsoluteDate<T> date, Frame frame)
Compute the attitude corresponding to an orbital state.Attitude
getAttitude(PVCoordinatesProvider pvProv, AbsoluteDate date, Frame frame)
Compute the attitude corresponding to an orbital state.<T extends CalculusFieldElement<T>>
FieldRotation<T>getAttitudeRotation(FieldPVCoordinatesProvider<T> pvProv, FieldAbsoluteDate<T> date, Frame frame)
Compute the attitude-related rotation corresponding to an orbital state.Rotation
getAttitudeRotation(PVCoordinatesProvider pvProv, AbsoluteDate date, Frame frame)
Compute the attitude-related rotation corresponding to an orbital state.Frame
getBodyFrame()
Get the body frame.protected <T extends CalculusFieldElement<T>>
FieldVector3D<T>getTargetPosition(FieldPVCoordinatesProvider<T> pvProv, FieldAbsoluteDate<T> date, Frame frame)
Compute the target point position in specified frame.protected Vector3D
getTargetPosition(PVCoordinatesProvider pvProv, AbsoluteDate date, Frame frame)
Compute the target point position in specified frame.protected abstract <T extends CalculusFieldElement<T>>
TimeStampedFieldPVCoordinates<T>getTargetPV(FieldPVCoordinatesProvider<T> pvProv, FieldAbsoluteDate<T> date, Frame frame)
Compute the target point position/velocity in specified frame.protected abstract TimeStampedPVCoordinates
getTargetPV(PVCoordinatesProvider pvProv, AbsoluteDate date, Frame frame)
Compute the target point position/velocity in specified frame.
-
-
-
Method Detail
-
getBodyFrame
public Frame getBodyFrame()
Get the body frame.- Returns:
- body frame
-
getTargetPV
protected abstract TimeStampedPVCoordinates getTargetPV(PVCoordinatesProvider pvProv, AbsoluteDate date, Frame frame)
Compute the target point position/velocity in specified frame.- Parameters:
pvProv
- provider for PV coordinatesdate
- date at which target point is requestedframe
- frame in which observed ground point should be provided- Returns:
- observed ground point position (element 0) and velocity (at index 1) in specified frame
-
getTargetPV
protected abstract <T extends CalculusFieldElement<T>> TimeStampedFieldPVCoordinates<T> getTargetPV(FieldPVCoordinatesProvider<T> pvProv, FieldAbsoluteDate<T> date, Frame frame)
Compute the target point position/velocity in specified frame.- Type Parameters:
T
- type of the field elements- Parameters:
pvProv
- provider for PV coordinatesdate
- date at which target point is requestedframe
- frame in which observed ground point should be provided- Returns:
- observed ground point position (element 0) and velocity (at index 1) in specified frame
- Since:
- 9.0
-
getTargetPosition
protected Vector3D getTargetPosition(PVCoordinatesProvider pvProv, AbsoluteDate date, Frame frame)
Compute the target point position in specified frame.- Parameters:
pvProv
- provider for PV coordinatesdate
- date at which target point is requestedframe
- frame in which observed ground point should be provided- Returns:
- observed ground point position in specified frame
- Since:
- 12.0
-
getTargetPosition
protected <T extends CalculusFieldElement<T>> FieldVector3D<T> getTargetPosition(FieldPVCoordinatesProvider<T> pvProv, FieldAbsoluteDate<T> date, Frame frame)
Compute the target point position in specified frame.- Type Parameters:
T
- type of the field elements- Parameters:
pvProv
- provider for PV coordinatesdate
- date at which target point is requestedframe
- frame in which observed ground point should be provided- Returns:
- observed ground point position in specified frame
- Since:
- 12.0
-
getAttitude
public Attitude getAttitude(PVCoordinatesProvider pvProv, AbsoluteDate date, Frame frame)
Compute the attitude corresponding to an orbital state.- Specified by:
getAttitude
in interfaceAttitudeProvider
- Parameters:
pvProv
- local position-velocity provider around current datedate
- current dateframe
- reference frame from which attitude is computed- Returns:
- attitude on the specified date and position-velocity state
-
getAttitude
public <T extends CalculusFieldElement<T>> FieldAttitude<T> getAttitude(FieldPVCoordinatesProvider<T> pvProv, FieldAbsoluteDate<T> date, Frame frame)
Compute the attitude corresponding to an orbital state.- Specified by:
getAttitude
in interfaceAttitudeProvider
- Type Parameters:
T
- type of the field elements- Parameters:
pvProv
- local position-velocity provider around current datedate
- current dateframe
- reference frame from which attitude is computed- Returns:
- attitude on the specified date and position-velocity state
-
getAttitudeRotation
public Rotation getAttitudeRotation(PVCoordinatesProvider pvProv, AbsoluteDate date, Frame frame)
Compute the attitude-related rotation corresponding to an orbital state.- Specified by:
getAttitudeRotation
in interfaceAttitudeProvider
- Parameters:
pvProv
- local position-velocity provider around current datedate
- current dateframe
- reference frame from which attitude is computed- Returns:
- attitude-related rotation on the specified date and position-velocity state
-
getAttitudeRotation
public <T extends CalculusFieldElement<T>> FieldRotation<T> getAttitudeRotation(FieldPVCoordinatesProvider<T> pvProv, FieldAbsoluteDate<T> date, Frame frame)
Compute the attitude-related rotation corresponding to an orbital state.- Specified by:
getAttitudeRotation
in interfaceAttitudeProvider
- Type Parameters:
T
- type of the field elements- Parameters:
pvProv
- local position-velocity provider around current datedate
- current dateframe
- reference frame from which attitude is computed- Returns:
- rotation on the specified date and position-velocity state
-
-