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

Description

Interface for a missile object.

Public Methods

Public Method IsAttitudeTypeSupportedGets a value indicating whether the specified type can be used.
Public Method IsTrajectoryTypeSupportedGets a value indicating whether the specified type can be used.
Public Method SetAttitudeTypeMethod to set the type of attitude profile used by the missile.
Public Method SetTrajectoryTypeMethod to set the propagator type.

Public Properties

Public Property AccessConstraintsGet the constraints imposed on the missile.
Public Property AtmosphereThe local atmosphere.
Public Property AttitudeGet the missile's attitude profile.
Public Property AttitudeSupportedTypesReturns an array of valid choices.
Public Property AttitudeTypeGet the type of attitude profile used by the missile.
Public Property ExportToolsReturns the IAgMsExportTools interface.
Public Property GraphicsGet the missile's 2D Graphics properties.
Public Property GroundEllipsesGet the missile's ground ellipses properties.
Public Property RadarClutterMapReturns the radar clutter map.
Public Property RadarCrossSectionReturns the radar cross sectoin.
Public Property SpaceEnvironmentReturns the missile's SpaceEnvironment properties.
Public Property TrajectoryGet the missile's trajectory properties.
Public Property TrajectorySupportedTypesReturns an array of valid choices.
Public Property TrajectoryTypeGet the propagator type used by the missile.
Public Property VOGet the missile's 3D Graphics properties.

Interfaces

CoClasses that Implement IAgMissile

Example

Define missile trajectory
[C#]
// Set missile trajectory type
missile.SetTrajectoryType(AgEVePropagatorType.ePropagatorBallistic);

// Retrieve the Propagator interface
IAgVePropagatorBallistic trajectory = missile.Trajectory as IAgVePropagatorBallistic;

// Set propagator settings if they should be other than defaults
trajectory.EphemerisInterval.SetExplicitInterval("1 Jan 2012 12:00:00.000", "2 Jan 2012 12:00:00.000");
trajectory.Step = 60.0;

// Set flight parameters
trajectory.SetLaunchType(AgEVeLaunch.eLaunchLLA);
IAgVeLaunchLLA launch = trajectory.Launch as IAgVeLaunchLLA;
launch.Lat = 0.0;
launch.Lon = 0.0;
launch.Alt = 0.0;

// Set impact location type
trajectory.SetImpactLocationType(AgEVeImpactLocation.eImpactLocationPoint);

// Retrieve the impact point interface
IAgVeImpactLocationPoint impactLocation = trajectory.ImpactLocation as IAgVeImpactLocationPoint;
impactLocation.SetLaunchControlType(AgEVeLaunchControl.eLaunchControlFixedTimeOfFlight);

// Retrieve the launch flight interface
IAgVeLaunchControlFixedTimeOfFlight launchControl = impactLocation.LaunchControl as IAgVeLaunchControlFixedTimeOfFlight;
launchControl.TimeOfFlight = 9000.0;

// Configure missile Impact parameters
impactLocation.SetImpactType(AgEVeImpact.eImpactLLA);
IAgVeImpactLLA impact = impactLocation.Impact as IAgVeImpactLLA;
impact.Lat = 12.0;
impact.Lon = 5.0;
impact.Alt = 0.0;

// Propagate Missile
trajectory.Propagate();
Define missile trajectory
[Visual Basic .NET]
' Set missile trajectory type
missile.SetTrajectoryType(AgEVePropagatorType.ePropagatorBallistic)

' Retrieve the Propagator interface
Dim trajectory As IAgVePropagatorBallistic = TryCast(missile.Trajectory, IAgVePropagatorBallistic)

' Set propagator settings if they should be other than defaults
trajectory.EphemerisInterval.SetExplicitInterval("1 Jan 2012 12:00:00.000", "2 Jan 2012 12:00:00.000")
trajectory.[Step] = 60

' Set flight parameters
trajectory.SetLaunchType(AgEVeLaunch.eLaunchLLA)
Dim launch As IAgVeLaunchLLA = TryCast(trajectory.Launch, IAgVeLaunchLLA)
launch.Lat = 0
launch.Lon = 0
launch.Alt = 0

' Set impact location type
trajectory.SetImpactLocationType(AgEVeImpactLocation.eImpactLocationPoint)

' Retrieve the impact point interface
Dim impactLocation As IAgVeImpactLocationPoint = TryCast(trajectory.ImpactLocation, IAgVeImpactLocationPoint)
impactLocation.SetLaunchControlType(AgEVeLaunchControl.eLaunchControlFixedTimeOfFlight)

' Retrieve the launch flight interface
Dim launchControl As IAgVeLaunchControlFixedTimeOfFlight = TryCast(impactLocation.LaunchControl, IAgVeLaunchControlFixedTimeOfFlight)
launchControl.TimeOfFlight = 9000

' Configure missile Impact parameters
impactLocation.SetImpactType(AgEVeImpact.eImpactLLA)
Dim impact As IAgVeImpactLLA = TryCast(impactLocation.Impact, IAgVeImpactLLA)
impact.Lat = 12
impact.Lon = 5
impact.Alt = 0

' Propagate Missile
trajectory.Propagate()
Create a New Missile (on the current scenario central body)
[Python]
# IAgScenario scenario: Scenario object
missile = scenario.Children.New(13,'MyMissile') # eMissile
missile.SetTrajectoryType(10) # ePropagatorBallistic
trajectory = missile.Trajectory
trajectory.StartTime = 0
trajectory.Launch.Lat = 29
trajectory.Launch.Lon = -81
trajectory.ImpactLocation.Impact.Lat = 27
trajectory.ImpactLocation.Impact.Lon = -43
trajectory.ImpactLocation.SetLaunchControlType(0) # eLaunchControlFixedApogeeAlt
trajectory.impactLocation.LaunchControl.ApogeeAlt = 1200   # km
trajectory.Propagate()

Create a New Missile (on the current scenario central body)
[MATLAB]
% IAgScenario scenario: Scenario object
missile = scenario.Children.New('eMissile','MyMissile');
missile.SetTrajectoryType('ePropagatorBallistic');
trajectory = missile.Trajectory;
trajectory.StartTime = 0;
trajectory.Launch.Lat = 29;
trajectory.Launch.Lon = -81;
trajectory.ImpactLocation.Impact.Lat = 27;
trajectory.ImpactLocation.Impact.Lon = -43;
trajectory.ImpactLocation.SetLaunchControlType('eLaunchControlFixedApogeeAlt');
trajectory.impactLocation.LaunchControl.ApogeeAlt = 1200;   % km
trajectory.Propagate;

© 2019 Analytical Graphics, Inc. All Rights Reserved.