AGI STK VGT 11 Send comments on this topic.
IAgCrdnEventIntervalCollectionSignaled Interface





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

Public Property BaseClockLocation The base clock location, which is a point from VGT.
Public Property OriginalCollection The original interval list collection.
Public Property SignalDelay The Signal delay definition, which includes signal transmission, time delay convergence and signal path reference system.
Public Property SignalSense The direction of the signal, whether you are Transmitting or Receiving from the Base Clock Location.
Public Property 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; 
 
// Uses current Time unit preference, this code snippet assumes seconds. 
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

' Uses current Time unit preference, this code snippet assumes seconds.
basicSignalDelay.TimeDelayConvergence = 0.002

Dim intervalResult As IAgCrdnIntervalsVectorResult = intervalCollection.FindIntervalCollection()
If intervalResult.IsValid Then
    #If Not CSToJava Then
    For Each intervals As IAgCrdnIntervalCollection In intervalResult.IntervalCollections
        #Else
        #End If
        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

© 2016 All Rights Reserved.

STK Programming Interface 11.0.1