AGI STK VGT 11Send comments on this topic.
CreateEventIntervalSignaled Method (IAgCrdnEventIntervalFactory)
See Also  Example
Name
Description
Windows






Windows & Linux

Description

Create an interval that is recorded at target clock location by performing signal transmission of original interval between base and target clock locations.

Syntax

[Visual Basic .NET]
Public Function CreateEventIntervalSignaled( _
   ByVal Name As String, _
   ByVal Description As String _
) As IAgCrdnEventInterval
[C#]
public IAgCrdnEventInterval CreateEventIntervalSignaled(
   string Name,
   string Description
);
[Managed C++]
public: IAgCrdnEventInterval^ CreateEventIntervalSignaled(
   String __gc ^ Name,
   String __gc ^ Description
);
[Java]
public IAgCrdnEventInterval createEventIntervalSignaled(
   String Name,
   String Description
);
[Unmanaged C++]
public: HRESULT CreateEventIntervalSignaled(
   BSTR Name,
   BSTR Description,
   IAgCrdnEventInterval ** ReturnValue
);

Parameters

Name
Description

Remarks

Spaces and most punctuation ( except for "-_().") cannot be used as a part of a component name when creating new components via VGT API.

Example

Create and configure signaled event interval.
[C#]Copy Code
IAgCrdnProvider satelliteVgtProvider = stkRoot.GetObjectFromPath("Satellite/LEO").Vgt; 
IAgCrdnProvider aircraftVgtProvider = stkRoot.GetObjectFromPath("Aircraft/UAV").Vgt; 
 
IAgCrdnEventInterval eventInterval = satelliteVgtProvider.EventIntervals.Factory.CreateEventIntervalSignaled("MyIntervalSignaled",  "MyDescription"); 
IAgCrdnEventIntervalSignaled asSignaled = eventInterval as IAgCrdnEventIntervalSignaled; 
 
asSignaled.OriginalInterval = aircraftVgtProvider.EventIntervals["AvailabilityTimeSpan"]; 
asSignaled.BaseClockLocation = satelliteVgtProvider.Points["Center"]; 
asSignaled.TargetClockLocation = aircraftVgtProvider.Points["Center"]; 
 
asSignaled.SignalSense = AgECrdnSignalSense.eCrdnSignalSenseReceive; 
IAgCrdnSignalDelayBasic basicSignalDelay = asSignaled.SignalDelay as IAgCrdnSignalDelayBasic; 
basicSignalDelay.SpeedOption = AgECrdnSpeedOptions.eCrdnLightTransmissionSpeed; 
 
// Uses current Time unit preference, this code snippet assumes seconds. 
basicSignalDelay.TimeDelayConvergence = 0.002
 
IAgCrdnEventIntervalResult intervalResult = eventInterval.FindInterval(); 
if (intervalResult.IsValid) 

    Console.WriteLine("Interval Start: " + intervalResult.Interval.Start); 
    Console.WriteLine("Interval Stop: " + intervalResult.Interval.Stop); 

 

Create and configure signaled event interval.
[Visual Basic .NET]Copy Code
Dim satelliteVgtProvider As IAgCrdnProvider = stkRoot.GetObjectFromPath("Satellite/LEO").Vgt
Dim aircraftVgtProvider As IAgCrdnProvider = stkRoot.GetObjectFromPath("Aircraft/UAV").Vgt

Dim eventInterval As IAgCrdnEventInterval = satelliteVgtProvider.EventIntervals.Factory.CreateEventIntervalSignaled("MyIntervalSignaled", "MyDescription")
Dim asSignaled As IAgCrdnEventIntervalSignaled = TryCast(eventInterval, IAgCrdnEventIntervalSignaled)

asSignaled.OriginalInterval = aircraftVgtProvider.EventIntervals("AvailabilityTimeSpan")
asSignaled.BaseClockLocation = satelliteVgtProvider.Points("Center")
asSignaled.TargetClockLocation = aircraftVgtProvider.Points("Center")

asSignaled.SignalSense = AgECrdnSignalSense.eCrdnSignalSenseReceive
Dim basicSignalDelay As IAgCrdnSignalDelayBasic = TryCast(asSignaled.SignalDelay, IAgCrdnSignalDelayBasic)
basicSignalDelay.SpeedOption = AgECrdnSpeedOptions.eCrdnLightTransmissionSpeed

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

Dim intervalResult As IAgCrdnEventIntervalResult = eventInterval.FindInterval()
If intervalResult.IsValid Then
    Console.WriteLine("Interval Start: " + intervalResult.Interval.Start)
    Console.WriteLine("Interval Stop: " + intervalResult.Interval.[Stop])
End If

See Also

© 2019 Analytical Graphics, Inc. All Rights Reserved.