Description
Interface for a missile object.
Public Methods
Public 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 = -20.0;
impact.Lon = -20.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 = -20
impact.Lon = -20
impact.Alt = 0
' Propagate Missile
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;
root.UnitPreferences.Item('DateFormat').SetCurrentUnit('EpSec');
trajectory.EphemerisInterval.SetExplicitInterval(0, 0) % stop time later computed based on propagation
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();
|
|