AGI STK VGT 11 Send comments on this topic.
IAgCrdnEventIntervalCollectionLighting Interface
Windows






Windows & Linux

Description

Defined by computing sunlight, penumbra and umbra intervals as seen at specified location using specified selection of eclipsing bodies.

Object Model


Public Properties

Public Property EclipsingBodiesA custom list of eclipsing bodies. This list is used if UseObjectEclipsingBodies is set to false.
Public Property LocationThe location point to compute sunlight, penumbra and umbra.
Public Property UseObjectEclipsingBodiesWhen true, configure eclipsing bodies list based on that of parent STK Object.

Example

Create and configure lighting event interval collection.
[C#]Copy Code
IAgCrdnEventIntervalCollection intervalCollection = provider.EventIntervalCollections.Factory.CreateEventIntervalCollectionLighting("MyIntervalCollectionLightning",  "MyDescription"); 
IAgCrdnEventIntervalCollectionLighting asCollectionLightning = intervalCollection as IAgCrdnEventIntervalCollectionLighting; 
 
// Optionally use a separate central body 
asCollectionLightning.UseObjectEclipsingBodies = true
asCollectionLightning.Location = provider.Points["Center"]; 
asCollectionLightning.EclipsingBodies = new object[] { "Saturn""Jupiter" }; 
 
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 lighting event interval collection.
[Visual Basic .NET]Copy Code
Dim intervalCollection As IAgCrdnEventIntervalCollection = provider.EventIntervalCollections.Factory.CreateEventIntervalCollectionLighting("MyIntervalCollectionLightning", "MyDescription")
Dim asCollectionLightning As IAgCrdnEventIntervalCollectionLighting = TryCast(intervalCollection, IAgCrdnEventIntervalCollectionLighting)

' Optionally use a separate central body
asCollectionLightning.UseObjectEclipsingBodies = True
asCollectionLightning.Location = provider.Points("Center")
asCollectionLightning.EclipsingBodies = New Object() {"Saturn", "Jupiter"}

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 IAgCrdnEventIntervalCollectionLighting

© 2018 Analytical Graphics, Inc. All Rights Reserved.