Description
Determines the entry time, exit time, and duration of a Spacecraft's pass through the Moon's shadow.
Timing Precision Mode
This page describes functionality in nanosecond timing precision mode.
Click here to see the documentation for this object in millisecond timing precision mode.
Note: This is an interval method. See the Interval Methods page for more information.
Note: This method has a state. See the Methods and Properties with State page for more information.
Method Signature
Arguments
EventTime
|
|
Description:
|
The time that the event occurred.
The FF_Preferences.IntervalEventReportingBehavior property controls whether the start of propagation is reported as an event. By default, if the time in shadow starts before the beginning of the propagation span, FreeFlyer will label the start of the propagation as the start of the time in shadow.
|
EventType
|
|
Description:
|
The type of the event that occurred. Event type == 1 is entry into annular shadow. Event type == 2 is exit from annular shadow. Event type == 101 is entry into umbral shadow. Event type == 102 is exit from umbral shadow. Event type == 201 is entry into penumbral shadow. Event type == 202 is exit from penumbral shadow.
|
Return Value
Returns the number of elements filled into EventType and EventTime arrays.
Syntax
myVariable1 = mySpacecraft1.MoonShadowTimes(myTimeSpanArray1, myArray1);
|
This example demonstrates how to generate a report of a Spacecraft's passes through the Moon's shadow. An output of 0 indicates that no passes were recorded, if more than one pass is recorded during one step of the Spacecraft, all events during the step are included in the EventTime TimeSpanArray and EventType Array.
Spacecraft Spacecraft1;
TimeSpanArray EventTime;
Array EventType;
String ScEventTime;
Variable ScEventType;
// Configure Spacecraft Orbit
Spacecraft1.CentralBody = "Moon";
Spacecraft1.A = 5000;
Spacecraft1.E = 0;
Spacecraft1.I = 10;
While (Spacecraft1.ElapsedTime < TIMESPAN(1 days));
If (Spacecraft1.MoonShadowTimes(EventTime, EventType) > 0) then;
ScEventTime = EventTime[0].ConvertToCalendarDate();
ScEventType = EventType[0];
Report ScEventTime, ScEventType to "Spacecraft_MoonShadowTimesArray.txt";
End;
Step Spacecraft1;
End;
|
Output:
|
See also
Spacecraft Object
Spacecraft.MoonShadowTimes
Spacecraft Propagation Guide
Coverage and Contact Analysis Guide
|