Description
Determines what interval list collection is recorded at target clock location by performing signal transmission of original interval list collection between base and target clock locations. If any signaled interval ends up with start time after its stop, the interval is excluded from signaled list. If neighboring signaled intervals overlap or abut, they are replaced by single interval in signaled list.
Object Model
Public Properties
BaseClockLocation | The base clock location, which is a point from VGT. |
OriginalCollection | The original interval list collection. |
SignalDelay | The Signal delay definition, which includes signal transmission, time delay convergence and signal path reference system. |
SignalSense | The direction of the signal, whether you are Transmitting or Receiving from the Base Clock Location. |
TargetClockLocation | The target clock location, which is a point from VGT. |
Example
Create and configure signaled event interval collection.
[C#] | Copy Code |
---|
IAgCrdnProvider satelliteVgtProvider = stkRoot.GetObjectFromPath("Satellite/LEO").Vgt;
IAgCrdnProvider aircraftVgtProvider = stkRoot.GetObjectFromPath("Aircraft/UAV").Vgt;
IAgCrdnEventIntervalCollection intervalCollection = satelliteVgtProvider.EventIntervalCollections.Factory.CreateEventIntervalCollectionSignaled("MyIntervalCollectionSignaled", "MyDescription");
IAgCrdnEventIntervalCollectionSignaled asCollectionSignaled = intervalCollection as IAgCrdnEventIntervalCollectionSignaled;
asCollectionSignaled.OriginalCollection = aircraftVgtProvider.EventIntervalCollections["LightingIntervals"];
asCollectionSignaled.BaseClockLocation = satelliteVgtProvider.Points["Center"];
asCollectionSignaled.TargetClockLocation = aircraftVgtProvider.Points["Center"];
asCollectionSignaled.SignalSense = AgECrdnSignalSense.eCrdnSignalSenseTransmit;
IAgCrdnSignalDelayBasic basicSignalDelay = asCollectionSignaled.SignalDelay as IAgCrdnSignalDelayBasic;
basicSignalDelay.SpeedOption = AgECrdnSpeedOptions.eCrdnLightTransmissionSpeed;
basicSignalDelay.TimeDelayConvergence = 0.002;
IAgCrdnIntervalsVectorResult intervalResult = intervalCollection.FindIntervalCollection();
if (intervalResult.IsValid)
{
foreach (IAgCrdnIntervalCollection intervals in intervalResult.IntervalCollections)
{
foreach (IAgCrdnInterval interval in intervals)
{
Console.WriteLine("Start: " + interval.Start);
Console.WriteLine("Start: " + interval.Stop);
}
}
}
|
|
Create and configure signaled event interval collection.
[Visual Basic .NET] | Copy Code |
---|
Dim satelliteVgtProvider As IAgCrdnProvider = stkRoot.GetObjectFromPath("Satellite/LEO").Vgt Dim aircraftVgtProvider As IAgCrdnProvider = stkRoot.GetObjectFromPath("Aircraft/UAV").Vgt
Dim intervalCollection As IAgCrdnEventIntervalCollection = satelliteVgtProvider.EventIntervalCollections.Factory.CreateEventIntervalCollectionSignaled("MyIntervalCollectionSignaled", "MyDescription") Dim asCollectionSignaled As IAgCrdnEventIntervalCollectionSignaled = TryCast(intervalCollection, IAgCrdnEventIntervalCollectionSignaled)
asCollectionSignaled.OriginalCollection = aircraftVgtProvider.EventIntervalCollections("LightingIntervals") asCollectionSignaled.BaseClockLocation = satelliteVgtProvider.Points("Center") asCollectionSignaled.TargetClockLocation = aircraftVgtProvider.Points("Center")
asCollectionSignaled.SignalSense = AgECrdnSignalSense.eCrdnSignalSenseTransmit Dim basicSignalDelay As IAgCrdnSignalDelayBasic = TryCast(asCollectionSignaled.SignalDelay, IAgCrdnSignalDelayBasic) basicSignalDelay.SpeedOption = AgECrdnSpeedOptions.eCrdnLightTransmissionSpeed
basicSignalDelay.TimeDelayConvergence = 0.002
Dim intervalResult As IAgCrdnIntervalsVectorResult = intervalCollection.FindIntervalCollection() If intervalResult.IsValid Then For Each intervals As IAgCrdnIntervalCollection In intervalResult.IntervalCollections For Each interval As IAgCrdnInterval In intervals Console.WriteLine("Start: " + interval.Start) Console.WriteLine("Start: " + interval.[Stop]) Next Next End If
|
|
CoClasses that Implement IAgCrdnEventIntervalCollectionSignaled