AGI STK Objects 11 Send comments on this topic.
IAgSatellite Interface





Description

Satellite properties.

Object Model















Public Methods

Public Method IsAttitudeTypeSupported Get a value indicating whether the specified type can be used.
Public Method IsPropagatorTypeSupported Gets a value indicating whether the specified type can be used.
Public Method SetAttitudeType Sets the attitude type.
Public Method SetPropagatorType Sets the propagator type.

Public Properties

Public Property AccessConstraints Get the constraints imposed on the satellite.
Public Property Attitude Get the Attitude properties of the satellite.
Public Property AttitudeSupportedTypes Return an array of valid choices.
Public Property AttitudeType The type of the satellite's attitude.
Public Property EclipseBodies Get the customized list of Eclipse Bodies, which are central bodies used in lighting computations.
Public Property ExportTools Returns the IAgSaExportTools interface.
Public Property Graphics Get the 2D Graphics properties of the satellite.
Public Property GroundEllipses Get the Ground Ellipses properties of the satellite.
Public Property MassProperties Get the Mass properties of the satellite.
Public Property PassBreak Get the Pass Break properties of the satellite.
Public Property Propagator Get information for the propagator.
Public Property PropagatorSupportedTypes Returns an array of valid choices.
Public Property PropagatorType The type of propagator used to define the satellite's orbit.
Public Property RadarClutterMap Returns the radar clutter map.
Public Property RadarCrossSection Returns the radar cross sectoin.
Public Property ReferenceVehicle Get the reference vehicle of the satellite.
Public Property SpaceEnvironment Get the SpaceEnvironment properties of the satellite.
Public Property VO Get the 3D Graphics properties of the satellite.

Example

Create a satellite (on current scenario central body)
[C#] Copy Code
// Create the Satellite 
IAgSatellite satellite = root.CurrentScenario.Children.New(AgESTKObjectType.eSatellite, "MySatellite"as IAgSatellite; 
 

Create a satellite from the satellite database
[C#] Copy Code
// Get STK database location using Connect 
<a href="STKUtil.chm::/STKUtil~AgExecCmdResult.html">AgExecCmdResult</a> result = root.ExecuteCommand("GetDirectory / Database Satellite"); 
string satDataDir = result[0]; 
string filelocation = "\"" + Path.Combine(satDataDir, @"stkAllTLE.sd") + "\""
string commonname = "\"hst\""
 
// Import object from database using Connect 
string command = String.Format("ImportFromDB * Satellite {0} Constellation ImportedFromSatDB Propagate On CommonName {1}", filelocation, commonname); 
root.ExecuteCommand(command); 
 

Set the satellite to use the J2 propagator
[C#] Copy Code
// Set propagator to J2 Perturbation 
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorJ2Perturbation); 
 
// Get the J2 Perturbation propagator 
IAgVePropagatorJ2Perturbation propagator = satellite.Propagator as IAgVePropagatorJ2Perturbation; 
 

Set the satellite to use the GPS propagator
[C#] Copy Code
// Set propagator to GPS 
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorGPS); 
 
// Get the GPS propagator 
IAgVePropagatorGPS propagator = satellite.Propagator as IAgVePropagatorGPS; 
 

Set the satellite to use the STK External propagator
[C#] Copy Code
// Set propagator to STK External 
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorStkExternal); 
 
// Get the STK External propagator 
IAgVePropagatorStkExternal propagator = satellite.Propagator as IAgVePropagatorStkExternal; 
 

Set the satellite to use the SGP4 propagator
[C#] Copy Code
// Set propagator to SGP4 
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorSGP4); 
 
// Get the SGP4 propagator 
IAgVePropagatorSGP4 propagator = satellite.Propagator as IAgVePropagatorSGP4; 
 

Set the satellite to use the SPICE propagator
[C#] Copy Code
// Set propagator to SPICE 
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorSPICE); 
 
// Get the SPICE propagator 
IAgVePropagatorSPICE propagator = satellite.Propagator as IAgVePropagatorSPICE; 
 
 

Set the satellite to use the LOP propagator
[C#] Copy Code
// Set satellite propagator to LOP 
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorLOP); 
 
// Get the LOP propagator 
IAgVePropagatorLOP propagator = satellite.Propagator as IAgVePropagatorLOP; 
 

Set the satellite to use the HPOP propagator
[C#] Copy Code
// Set satellite propagator to HPOP 
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorHPOP); 
 
// Get the HPOP propagator 
IAgVePropagatorHPOP propagator = satellite.Propagator as IAgVePropagatorHPOP; 
 

Create a satellite (on current scenario central body)
[Visual Basic .NET] Copy Code
' Create the Satellite
Dim satellite As IAgSatellite = TryCast(root.CurrentScenario.Children.[New](AgESTKObjectType.eSatellite, "MySatellite"), IAgSatellite)

Create a satellite from the satellite database
[Visual Basic .NET] Copy Code
' Get STK database location using Connect
Dim result As AgExecCmdResult = root.ExecuteCommand("GetDirectory / Database Satellite")
Dim satDataDir As String = result(0)
Dim filelocation As String = """" + Path.Combine(satDataDir, "stkAllTLE.sd") + """"
Dim commonname As String = """hst"""

' Import object from database using Connect
Dim command As String = [String].Format("ImportFromDB * Satellite {0} Constellation ImportedFromSatDB Propagate On CommonName {1}", filelocation, commonname)
root.ExecuteCommand(command)

Set the satellite to use the J2 propagator
[Visual Basic .NET] Copy Code
' Set propagator to J2 Perturbation
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorJ2Perturbation)

' Get the J2 Perturbation propagator
Dim propagator As IAgVePropagatorJ2Perturbation = TryCast(satellite.Propagator, IAgVePropagatorJ2Perturbation)

Set the satellite to use the GPS propagator
[Visual Basic .NET] Copy Code
' Set propagator to GPS
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorGPS)

' Get the GPS propagator
Dim propagator As IAgVePropagatorGPS = TryCast(satellite.Propagator, IAgVePropagatorGPS)

Set the satellite to use the STK External propagator
[Visual Basic .NET] Copy Code
' Set propagator to STK External
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorStkExternal)

' Get the STK External propagator
Dim propagator As IAgVePropagatorStkExternal = TryCast(satellite.Propagator, IAgVePropagatorStkExternal)

Set the satellite to use the SGP4 propagator
[Visual Basic .NET] Copy Code
' Set propagator to SGP4
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorSGP4)

' Get the SGP4 propagator
Dim propagator As IAgVePropagatorSGP4 = TryCast(satellite.Propagator, IAgVePropagatorSGP4)

Set the satellite to use the SPICE propagator
[Visual Basic .NET] Copy Code
' Set propagator to SPICE
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorSPICE)

' Get the SPICE propagator
Dim propagator As IAgVePropagatorSPICE = TryCast(satellite.Propagator, IAgVePropagatorSPICE)


Set the satellite to use the LOP propagator
[Visual Basic .NET] Copy Code
' Set satellite propagator to LOP
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorLOP)

' Get the LOP propagator
Dim propagator As IAgVePropagatorLOP = TryCast(satellite.Propagator, IAgVePropagatorLOP)

Set the satellite to use the HPOP propagator
[Visual Basic .NET] Copy Code
' Set satellite propagator to HPOP
satellite.SetPropagatorType(AgEVePropagatorType.ePropagatorHPOP)

' Get the HPOP propagator
Dim propagator As IAgVePropagatorHPOP = TryCast(satellite.Propagator, IAgVePropagatorHPOP)

Create a satellite (on the current scenario central body)
[MATLAB] Copy Code
% IAgStkObjectRoot root: STK Object Model Root 
satellite = root.CurrentScenario.Children.New('eSatellite', 'MySatellite'); 
 
 
Set satellite attitude basic spinning
[MATLAB] Copy Code
% IAgSatellite satellite: Satellite object 
basic = satellite.Attitude.Basic; 
basic.SetProfileType('eProfileSpinning') 
basic.Profile.Body.AssignXYZ(0,0,1) 
basic.Profile.Inertial.AssignXYZ(0,1,0); 
basic.Profile.Rate = 6;  % rev/sec 
 
 
Set satellite attitude targeting
[MATLAB] Copy Code
% IAgSatellite satellite: Satellite object 
attitudePointing = satellite.Attitude.Pointing; 
attitudePointing.UseTargetPointing = 1; 
attitudePointing.Targets.RemoveAll; 
attitudePointing.Targets.Add('AreaTarget/MyAreaTarget'); 
attitudePointing.TargetTimes.UseAccessTimes; 
 
 
Set satellite attitude external
[MATLAB] Copy Code
% IAgSatellite satellite: Satellite object 
satellite.Attitude.External.Load('C:\Program Files\AGI\STK 11\Help\stktraining\text\AttitudeTimeEulerAngles_Example.a'); 
 
 

CoClasses that Implement IAgSatellite

© 2016 Analytical Graphics, Inc. All Rights Reserved.

STK Programming Interface 11.0.1