Description
Real time attitude interface.
Public Methods
AddCBFQuaternion | Adds attitude data based on a time-ordered set of quaternions interpreted relative to CBF. |
AddECIYPR | Adds attitude data based on a time-ordered set of yaw, pitch, roll angles in the J2000 ECI coordinate system. |
AddEuler | Adds attitude data based on a time-ordered set of Euler angles. |
AddQuaternion | Adds attitude data based on a time-ordered set of quaternions. |
AddYPR | Adds attitude data based on a time-ordered set of yaw, pitch and roll angles. |
ClearAll | Clear attitude data created using AddXXX commands. |
Public Properties
BlockFactor | A block factor used to help size allocated memory used to hold the history. |
DataReference | Returns a reference attitude profile for incoming attitude data. |
Duration | Get look ahead/look behind duration. |
LookAheadMethod | Look ahead method can be extrapolate or hold. |
Interfaces
CoClasses that Implement IAgVeAttitudeRealTime
Example
Add attitude data based on a time-ordered set of quaternions interpreted relative to CBF
[C#] |
---|
satellite.SetAttitudeType(AgEVeAttitude.eAttitudeRealTime);
IAgVeAttitudeRealTime realtime = satellite.Attitude as IAgVeAttitudeRealTime;
for (int i = 0; i <= cpfQuaternion.GetUpperBound(0); i++)
{
realtime.AddCBFQuaternion(
cpfQuaternion.GetValue(i, 0),
(double)cpfQuaternion.GetValue(i, 1),
(double)cpfQuaternion.GetValue(i, 2),
(double)cpfQuaternion.GetValue(i, 3),
(double)cpfQuaternion.GetValue(i, 4));
}
|
|
Configure real-time attitude
[C#] |
---|
// set attitude type to real time
satellite.SetAttitudeType(AgEVeAttitude.eAttitudeRealTime);
IAgVeAttitudeRealTime realtime = satellite.Attitude as IAgVeAttitudeRealTime;
// Set our Attitude Look Ahead method to Extrapolate
realtime.LookAheadMethod = AgEVeLookAheadMethod.eExtrapolate;
// Duration
IAgVeDuration duration = realtime.Duration;
duration.LookAhead = 1600.0;
duration.LookBehind = 1600.0;
// BlockFactor
realtime.BlockFactor = 40;
realtime.DataReference.SetProfileType(AgEVeProfile.eProfileInertiallyFixed);
|
|
Add attitude data based on a time-ordered set of quaternions interpreted relative to CBF
[Visual Basic .NET] |
---|
satellite.SetAttitudeType(AgEVeAttitude.eAttitudeRealTime)
Dim realtime As IAgVeAttitudeRealTime = TryCast(satellite.Attitude, IAgVeAttitudeRealTime)
Dim i As Integer = 0
While i <= cpfQuaternion.GetUpperBound(0)
realtime.AddCBFQuaternion(cpfQuaternion.GetValue(i, 0), DirectCast(cpfQuaternion.GetValue(i, 1), Double), DirectCast(cpfQuaternion.GetValue(i, 2), Double), DirectCast(cpfQuaternion.GetValue(i, 3), Double), DirectCast(cpfQuaternion.GetValue(i, 4), Double))
System.Math.Max(System.Threading.Interlocked.Increment(i),i - 1)
End While
|
|
Configure real-time attitude
[Visual Basic .NET] |
---|
' set attitude type to real time
satellite.SetAttitudeType(AgEVeAttitude.eAttitudeRealTime)
Dim realtime As IAgVeAttitudeRealTime = TryCast(satellite.Attitude, IAgVeAttitudeRealTime)
' Set our Attitude Look Ahead method to Extrapolate
realtime.LookAheadMethod = AgEVeLookAheadMethod.eExtrapolate
' Duration
Dim duration As IAgVeDuration = realtime.Duration
duration.LookAhead = 1600
duration.LookBehind = 1600
' BlockFactor
realtime.BlockFactor = 40
realtime.DataReference.SetProfileType(AgEVeProfile.eProfileInertiallyFixed)
|
|