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






Windows & Linux

Description

Create an event array using fixed time steps from the specified time reference and adding sampled times to array if they fall within specified bounding interval list.

Syntax

[Visual Basic .NET]
Public Function CreateEventArrayFixedStep( _
   ByVal Name As String, _
   ByVal Description As String _
) As IAgCrdnEventArray
[C#]
public IAgCrdnEventArray CreateEventArrayFixedStep(
   string Name,
   string Description
);
[Managed C++]
public: IAgCrdnEventArray^ CreateEventArrayFixedStep(
   String __gc ^ Name,
   String __gc ^ Description
);
[Java]
public IAgCrdnEventArray createEventArrayFixedStep(
   String Name,
   String Description
);
[Unmanaged C++]
public: HRESULT CreateEventArrayFixedStep(
   BSTR Name,
   BSTR Description,
   IAgCrdnEventArray ** 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 fixed step event array.
[C#]Copy Code
IAgCrdnEventArray eventArray = provider.EventArrays.Factory.CreateEventArrayFixedStep("MyEventArrayFixedStep",  "MyDescription"); 
IAgCrdnEventArrayFixedStep asFixedStep = eventArray as IAgCrdnEventArrayFixedStep; 
 
asFixedStep.BoundingIntervalList = provider.EventIntervalLists["AfterStart.SatisfactionIntervals"]; 
asFixedStep.IncludeIntervalEdges = true
 
// Uses current Time unit preference, this code snippet assumes seconds. 
asFixedStep.SamplingTimeStep = 240
asFixedStep.ReferenceType = AgECrdnSampledReferenceTime.eCrdnSampledReferenceTimeStartOfIntervalList; 
 
// or using time instants 
asFixedStep.ReferenceType = AgECrdnSampledReferenceTime.eCrdnSampledReferenceTimeReferenceEvent; 
asFixedStep.ReferenceTimeInstant = provider.Events["EphemerisStartTime"]; 
 
IAgCrdnFindTimesResult timeArrays = eventArray.FindTimes(); 
if (timeArrays.IsValid) 

    Console.WriteLine("Times"); 
    int numTimes = timeArrays.Times.GetLength(0); 
    for (int i = 0; i < numTimes; ++i) 
    { 
        Console.WriteLine(timeArrays.Times.GetValue(i)); 
    } 
 
    foreach (IAgCrdnInterval timeArray in timeArrays.Intervals) 
    { 
        Console.WriteLine("Start: " + timeArray.Start); 
        Console.WriteLine("Stop: " + timeArray.Stop); 
    } 

 

Create and configure fixed step event array.
[Visual Basic .NET]Copy Code
Dim eventArray As IAgCrdnEventArray = provider.EventArrays.Factory.CreateEventArrayFixedStep("MyEventArrayFixedStep", "MyDescription")
Dim asFixedStep As IAgCrdnEventArrayFixedStep = TryCast(eventArray, IAgCrdnEventArrayFixedStep)

asFixedStep.BoundingIntervalList = provider.EventIntervalLists("AfterStart.SatisfactionIntervals")
asFixedStep.IncludeIntervalEdges = True

' Uses current Time unit preference, this code snippet assumes seconds.
asFixedStep.SamplingTimeStep = 240
asFixedStep.ReferenceType = AgECrdnSampledReferenceTime.eCrdnSampledReferenceTimeStartOfIntervalList

' or using time instants
asFixedStep.ReferenceType = AgECrdnSampledReferenceTime.eCrdnSampledReferenceTimeReferenceEvent
asFixedStep.ReferenceTimeInstant = provider.Events("EphemerisStartTime")

Dim timeArrays As IAgCrdnFindTimesResult = eventArray.FindTimes()
If timeArrays.IsValid Then
    Console.WriteLine("Times")
    Dim numTimes As Integer = timeArrays.Times.GetLength(0)
    Dim i As Integer = 0
    While i < numTimes
        Console.WriteLine(timeArrays.Times.GetValue(i))
        System.Threading.Interlocked.Increment(i)
    End While

    For Each timeArray As IAgCrdnInterval In timeArrays.Intervals
        Console.WriteLine("Start: " + timeArray.Start)
        Console.WriteLine("Stop: " + timeArray.[Stop])
    Next
End If

See Also

© 2018 Analytical Graphics, Inc. All Rights Reserved.