Description
Returns an array of track ids with a bool value indicating if it's visible to the specified object.
Syntax
Parameters
See Also
Example
Which tracks of the specified subset of tracks are visible from the other STK Object at the specified time?
[C#] |
---|
IAgMtoAnalysisVisibility mtoVisibility = mto.Analysis.Visibility;
mtoVisibility.UseTerrain = false; // Set to true to use terrain instead of line of sight.
mtoVisibility.Entirety = AgEMtoEntirety.eMtoEntiretyPartial; // Only applies if MTO is static (i.e. non time dependent).
Array tracksOfInterest = new object[]
{
1, 2, 7
};
mtoVisibility.StkObjectPath = "Satellite/J2Satellite";
// ComputeTracks expects as the second parameter a one dimensional array of mto track ids
// ComputeTracks returns a two dimensional array whose values are track id and visiblity
Array trackVisibilityArray = mtoVisibility.ComputeTracks(AgEMtoVisibilityMode.eVisibilityModeEach, ref tracksOfInterest, "1 Jan 2012 12:05:00.000");
// Output results
Console.WriteLine("ComputeTracks:");
for (int i = 0; i < trackVisibilityArray.GetLength(0); ++i)
{
Console.WriteLine(" Track {0} visibility: {1}",
Convert.ToInt32(trackVisibilityArray.GetValue(i, 0)),
Convert.ToInt32(trackVisibilityArray.GetValue(i, 1)));
}
|
|
Which tracks of the specified subset of tracks are visible from the other STK Object at the specified time?
[Visual Basic .NET] |
---|
Dim mtoVisibility As IAgMtoAnalysisVisibility = mto.Analysis.Visibility
mtoVisibility.UseTerrain = False
' Set to true to use terrain instead of line of sight.
mtoVisibility.Entirety = AgEMtoEntirety.eMtoEntiretyPartial
' Only applies if MTO is static (i.e. non time dependent).
Dim tracksOfInterest As Array = New Object() {1, 2, 7}
mtoVisibility.StkObjectPath = "Satellite/J2Satellite"
' ComputeTracks expects as the second parameter a one dimensional array of mto track ids
' ComputeTracks returns a two dimensional array whose values are track id and visiblity
Dim trackVisibilityArray As Array = mtoVisibility.ComputeTracks(AgEMtoVisibilityMode.eVisibilityModeEach, tracksOfInterest, "1 Jan 2012 12:05:00.000")
' Output results
Console.WriteLine("ComputeTracks:")
Dim i As Integer = 0
While i < trackVisibilityArray.GetLength(0)
Console.WriteLine(" Track {0} visibility: {1}", Convert.ToInt32(trackVisibilityArray.GetValue(i, 0)), Convert.ToInt32(trackVisibilityArray.GetValue(i, 1)))
System.Threading.Interlocked.Increment(i)
End While
|
|