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





Description

Provides accesses to the global unit table.

Object Model

Public Methods

Public Method GetCurrentUnitAbbrv Returns the Current Unit for a Dimension.
Public Method ResetUnits Resets the unitpreferences to the Default units
Public Method SetCurrentUnit Method to set unit preferences.

Public Properties

Public Property Count Returns the number of items in the collection.
Public Property Item Returns an IAgUnitPrefsDim given a Dimension name or an index.
Public Property JulianDateOffset The JulianDateOffset.
Public Property MissionElapsedTime The MissionElapsedTime.

Example

Isolate Unit Preferences when using multiple IAgStkObjectRoot objects
[C#] Copy Code
 

Isolate Unit Preferences when using multiple IAgStkObjectRoot objects
[Visual Basic .NET] Copy Code
' First root configured to use km
Dim root1 As IAgStkObjectRoot = New AgStkObjectRootClass()
root1.UnitPreferences.SetCurrentUnit("Distance", "km")

' Second root configured to use miles
Dim root2 As IAgStkObjectRoot = New AgStkObjectRootClass()
root2.Isolate()
root2.UnitPreferences.SetCurrentUnit("Distance", "mi")

' Create new scenario and ship object
' Close current scenario
If root1.CurrentScenario IsNot Nothing Then
    root1.CloseScenario()
End If
root1.NewScenario("Test")
root1.CurrentScenario.Children.[New](AgESTKObjectType.eShip, "Ship1")

' Obtain references to the ship object from each root
Dim shipFromRoot1 As IAgShip = TryCast(root1.GetObjectFromPath("Ship/Ship1"), IAgShip)
Dim shipFromRoot2 As IAgShip = TryCast(root2.GetObjectFromPath("Ship/Ship1"), IAgShip)

shipFromRoot1.SetRouteType(AgEVePropagatorType.ePropagatorGreatArc)

Dim greatArcFromRoot1 As IAgVePropagatorGreatArc = TryCast(shipFromRoot1.Route, IAgVePropagatorGreatArc)
Dim greatArcFromRoot2 As IAgVePropagatorGreatArc = TryCast(shipFromRoot2.Route, IAgVePropagatorGreatArc)

Dim waypointsFromRoot1 As IAgVeWaypointsElement = greatArcFromRoot1.Waypoints.Add()

waypointsFromRoot1.Altitude = 1
' 1 km
Dim waypointsFromRoot2 As IAgVeWaypointsElement = greatArcFromRoot2.Waypoints.Add()

waypointsFromRoot2.Altitude = 1
' 1 mile
greatArcFromRoot1.Propagate()

Dim i As Integer = 1
For Each wpt As IAgVeWaypointsElement In greatArcFromRoot1.Waypoints
    Console.WriteLine("Point #{0} Altitude {1} {2}", i, wpt.Altitude, root1.UnitPreferences.GetCurrentUnitAbbrv("Distance"))
    System.Threading.Interlocked.Increment(i)
Next
Console.WriteLine()

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

i = 1
For Each wpt As IAgVeWaypointsElement In greatArcFromRoot2.Waypoints
    Console.WriteLine("Point #{0} Altitude {1} {2}", i, wpt.Altitude, root2.UnitPreferences.GetCurrentUnitAbbrv("Distance"))
    System.Threading.Interlocked.Increment(i)
Next

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

root1.CloseScenario()

© 2016 Analytical Graphics, Inc. All Rights Reserved.