/// <summary> /// Initializes a new instance of the VisualTrajectoryBase class. /// </summary> public VisualTrajectoryBase() { YAxis = new VisualValueAxis(); TimeAxis = new VisualTimeAxis(); IsResetTimeAxisAutomatically = false; IsResetYAxisAutomatically = false; }
/// <summary> /// Prevents a default instance of the <see cref="VisualDimensionGraph"/> class from being created. /// </summary> private VisualDimensionGraph() { DisplayController = new VisualDisplayController(); TimeAxis = new VisualTimeAxis(); WordSegments = new Collection<VisualSegment>(); PhoneSegments = new Collection<VisualSegment>(); SelectedFrameIndexes = new ObservableCollection<int>(); PhoneDurations = new VisualDurations(); WaveSamples = new VisualLinerSamples(); }
/// <summary> /// Generate selected frame indexes. /// </summary> /// <param name="mousePos">Mouse X-axis position.</param> /// <param name="timeAxis">Graph data.</param> /// <param name="selectedFrameIndexes">Selected indexes.</param> public static void GenerateSelectedFrameIndexes(double mousePos, VisualTimeAxis timeAxis, Collection<int> selectedFrameIndexes) { selectedFrameIndexes.Clear(); if (timeAxis.ZoomMode == ZoomMode.FrameLevel) { int selectedIndex = GetFrameIndex(mousePos, timeAxis); selectedFrameIndexes.Add(selectedIndex); } }
/// <summary> /// Get frame index. /// </summary> /// <param name="mousePos">Mouse X-axis position.</param> /// <param name="timeAxis">Graph data.</param> /// <returns>Frame index.</returns> public static int GetFrameIndex(double mousePos, VisualTimeAxis timeAxis) { int selectedIndex = -1; if (timeAxis.ZoomMode == ZoomMode.FrameLevel) { double actualTime = ViewHelper.PixelToTimeSpan(mousePos, timeAxis.ZoomScale); selectedIndex = (int)Math.Floor((actualTime + timeAxis.StartingTime) / timeAxis.SampleInterval); } return selectedIndex; }
/// <summary> /// Initializes a new instance of the <see cref="VisualDurations"/> class. /// </summary> public VisualDurations() { Durations = new TransactionObservableCollection<double>(); TimeAxis = new VisualTimeAxis(); IsResetTimeAxisAutomatically = false; }