AGI STK Util 11Send comments on this topic.
IAgUnitPrefsDimCollection Interface

Description

Provides accesses to the global unit table.

Public Methods

Public Method GetCurrentUnitAbbrvReturns the Current Unit for a Dimension.
Public Method ResetUnitsResets the unitpreferences to the Default units
Public Method SetCurrentUnit

Method to set unit preferences.

Public Properties

Public Property CountReturns the number of items in the collection.
Public Property ItemReturns an IAgUnitPrefsDim given a Dimension name or an index.
Public Property JulianDateOffsetThe JulianDateOffset.
Public Property MissionElapsedTimeThe MissionElapsedTime.

Example

Isolate Unit Preferences when using multiple IAgStkObjectRoot objects
[C#]
// First root configured to use km
IAgStkObjectRoot root1 = new AgStkObjectRootClass();
root1.UnitPreferences.SetCurrentUnit("Distance", "km");

// Second root configured to use miles
IAgStkObjectRoot root2 = new AgStkObjectRootClass();
root2.Isolate();
root2.UnitPreferences.SetCurrentUnit("Distance", "mi");

// Create new scenario and ship object
// Close current scenario
if (root1.CurrentScenario != null)
{
    root1.CloseScenario();
}
root1.NewScenario("Test");
root1.CurrentScenario.Children.New(AgESTKObjectType.eShip, "Ship1");

// Obtain references to the ship object from each root
IAgShip shipFromRoot1 = root1.GetObjectFromPath("Ship/Ship1") as IAgShip;
IAgShip shipFromRoot2 = root2.GetObjectFromPath("Ship/Ship1") as IAgShip;

shipFromRoot1.SetRouteType(AgEVePropagatorType.ePropagatorGreatArc);

IAgVePropagatorGreatArc greatArcFromRoot1 = shipFromRoot1.Route as IAgVePropagatorGreatArc;
IAgVePropagatorGreatArc greatArcFromRoot2 = shipFromRoot2.Route as IAgVePropagatorGreatArc;

IAgVeWaypointsElement waypointsFromRoot1 = greatArcFromRoot1.Waypoints.Add();

waypointsFromRoot1.Altitude = 1; // 1 km

IAgVeWaypointsElement waypointsFromRoot2 = greatArcFromRoot2.Waypoints.Add();

waypointsFromRoot2.Altitude = 1; // 1 mile

greatArcFromRoot1.Propagate();

int i = 1;
foreach (IAgVeWaypointsElement wpt in greatArcFromRoot1.Waypoints)
{
    Console.WriteLine("Point #{0} Altitude {1} {2}", i, wpt.Altitude, root1.UnitPreferences.GetCurrentUnitAbbrv("Distance"));
    ++i;
}
Console.WriteLine();

//Sample Output
//Point #1 Altitude 1 km
//Point #2 Altitude 1.609344 km

i = 1;
foreach (IAgVeWaypointsElement wpt in greatArcFromRoot2.Waypoints)
{
    Console.WriteLine("Point #{0} Altitude {1} {2}", i, wpt.Altitude, root2.UnitPreferences.GetCurrentUnitAbbrv("Distance"));
    ++i;
}

//Sample Output
//Point #1 Altitude 0.621371192237334 mi
//Point #2 Altitude 1 mi

root1.CloseScenario();
Isolate Unit Preferences when using multiple IAgStkObjectRoot objects
[Visual Basic .NET]
© 2019 Analytical Graphics, Inc. All Rights Reserved.