WsfOrbitalEvent¶
- WsfOrbitalEvent
WsfOrbitalEvents are be passed to a WsfSpaceMover to perform specific actions, such as changing the orbit of a platform using maneuvering. The event may either be executed directly, using WsfSpaceMover.ExecuteEvent, or as part of a mission sequence, using WsfSpaceMover.ExecuteMissionSequence. Each script orbital event type is meant to be configured with a WsfOrbitalEventCondition object, passed in the object’s Construct method.
Note
Orbital events are considered to be finite (i.e., executing over a finite time), or impulsive (i.e., executing instantaneously), and they conditionally execute based on the provided orbital constraint (see WsfOrbitalEventCondition). Finite events execute at the provided update rate in SetUpdateInterval (otherwise, at the default update interval of one second), until complete. If a duration is also set using the SetDuration method, the event will execute for that duration, if possible (depending on the event type).
Available Orbital Events¶
Maneuver Events¶
Script Class
|
EventType String
|
---|---|
CHANGE_ECCENTRICITY
|
|
CHANGE_INCLINATION
|
|
CHANGE_RAAN
|
|
CHANGE_RAAN_INCLINATION
|
|
CHANGE_SEMI_MAJOR_AXIS
|
|
CIRCULARIZE
|
|
COMPOUND
|
|
DELTA_V
|
|
DRIFT
|
|
HOHMANN_TRANSFER
|
|
INTERCEPT
|
|
MATCH_VELOCITY
|
|
NATURAL_MOTION_CIRCUMNAVIGATION
|
|
NORMAL
|
|
RENDEZVOUS
|
|
TANGENT
|
|
TARGET
|
|
TEARDROP
|
Non-Maneuver Events¶
Script Class
|
EventType String
|
---|---|
CHANGE_ATTITUDE
|
|
PERFORM_STAGING
|
|
SCRIPTED
|
Methods¶
- WsfOrbitalEventCondition Condition()¶
Returns the condition required for the maneuver to execute.
- double Duration()¶
Returns the duration of a maneuver.
- bool IsComplete()¶
Returns true if the maneuver has completed, otherwise false.
- bool IsFinite()¶
Returns true if the maneuver is finite, otherwise false.
- void SetRelativeTime(double aRelativeTime)¶
Sets the amount of time until the maneuver executes when the condition is WsfOrbitalEventCondition.AT_RELATIVE_TIME.
- double Radius()¶
Returns the final radius of the maneuver when the co
- double RelativeTime()¶
Returns the relative amount of time for the maneuver to execute when the condition is WsfOrbitalEventCondition.AT_RELATIVE_TIME.
- void SetCondition(WsfOrbitalEventCondition aCondition)¶
Sets the condition required for the maneuver to execute.
- void SetDuration(double aDuration)¶
Sets the nominal duration for which the event will execute. If the duration is greater than zero, the event will be considered finite. This method will do nothing if the provided duration is less than 0.
- void SetFinite(bool aIsFinite)¶
Sets whether the event is to be considered finite.
Note
By default, orbital events are impulsive (not finite).
- void SetUpdateInterval(double aUpdateInterval)¶
Sets the update interval for the event at which finite events are executed.
Note
The default update interval is one second.
- double TimeToConstraint()¶
Returns the amount of time until the event executes (i.e., its execution condition is satisfied).