private void button_CreateAzimuthDifferenceDataDisplay_Click(object sender, EventArgs e) { // May need to create track comparison event interval first to then use as a time constraint in the data display IAgStkObject aircraftOwnship = CommonData.StkRoot.GetObjectFromPath("Aircraft/F35"); IAgStkObject measuredObject = CommonData.StkRoot.GetObjectFromPath(measuredObjName); if (aircraftOwnship.Vgt.EventIntervals.Contains(String.Format("TC_{0}_ComparisonInterval", trackName))) { return; // do nothing } else { IAgCrdnEventInterval eventInterval = aircraftOwnship.Vgt.EventIntervals.Factory.CreateEventIntervalFromIntervalList(String.Format("TC_{0}_ComparisonInterval", trackName), "Single time interval created from reference interval list."); IAgCrdnEventIntervalFromIntervalList eventIntervalFromList = eventInterval as IAgCrdnEventIntervalFromIntervalList; eventIntervalFromList.ReferenceIntervals = measuredObject.Vgt.EventIntervalLists["AvailabilityIntervals"]; eventIntervalFromList.IntervalSelection = AgECrdnIntervalSelection.eCrdnIntervalSelectionSpan; } try { string cmd = String.Format(@"TE_DataDisplay * Add Name ""Azimuth_Difference_TC_{0}"" AnalysisObject ""F35"" Numeric DataElement ""TC_{0}_AzimuthDifference, Azimuth Distance, deg, On"" Color ""Yellow"" Location ""1, 10, 10"" Digits ""3"" Width ""Auto"" TimeConstraint ""TC_{0}_ComparisonInterval""", trackName); CommonData.StkRoot.ExecuteCommand(cmd); CommandList.cmdList.Add(cmd); } catch (Exception exception) { MessageBox.Show("Error:" + exception); return; } }
public static void CreateTimelineComponent(GroundEvent currentGroundEvent) { IAgStkObject place = CommonData.StkRoot.GetObjectFromPath("Place/" + currentGroundEvent.Id); if (!place.Vgt.EventIntervals.Contains(currentGroundEvent.Id + "-Interval")) { IAgCrdnEventInterval interval = place.Vgt.EventIntervals.Factory.CreateEventIntervalFixed(currentGroundEvent.Id + "-Interval", ""); IAgCrdnEventIntervalFixed fixedInstant = interval as IAgCrdnEventIntervalFixed; fixedInstant.SetInterval(currentGroundEvent.StartTime, currentGroundEvent.StopTime); } string cmd = "Timeline * TimeComponent Add ContentView \"Event_Timeline\" DisplayName \"" + currentGroundEvent.Id + "-Interval\"" + " \"Place/" + currentGroundEvent.Id + " " + currentGroundEvent.Id + "-Interval Interval\""; CommonData.StkRoot.ExecuteCommand(cmd); CommonData.StkRoot.ExecuteCommand("Timeline * Refresh"); }