STK ObjectsSend comments on this topic.
IAgVeAttitudeRealTime Interface

Description

Real time attitude interface.

Public Methods

Public Method AddCBFQuaternionAdds attitude data based on a time-ordered set of quaternions interpreted relative to CBF.
Public Method AddECIYPRAdds attitude data based on a time-ordered set of yaw, pitch, roll angles in the J2000 ECI coordinate system.
Public Method AddEulerAdds attitude data based on a time-ordered set of Euler angles.
Public Method AddQuaternionAdds attitude data based on a time-ordered set of quaternions.
Public Method AddYPRAdds attitude data based on a time-ordered set of yaw, pitch and roll angles.
Public Method ClearAllClear attitude data created using AddXXX commands

Public Properties

Public Property BlockFactorA block factor used to help size allocated memory used to hold the history
Public Property DataReferenceReturns a reference attitude profile for incoming attitude data.
Public Property DurationGet look ahead/look behind duration.
Public Property LookAheadMethodLook ahead method can be extrapolate or hold.

Interfaces

Implemented Interface
IAgVeAttitude

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)
© 2024 Analytical Graphics, Inc. All Rights Reserved.