/// <summary> /// Set data. /// </summary> /// <param name="data">Graph data.</param> /// <param name="parent">Parent graph.</param> public void SetData(VisualDimensionGraph data, IMultiFrameControler parent) { Debug.Assert(data != null && parent != null); _graphData = data; _parent = parent; Debug.Assert(data.StaticTrajectory is VisualMultiTrajectory); _trajectoryData = data.StaticTrajectory as VisualMultiTrajectory; }
/// <summary> /// Set data context. /// </summary> /// <param name="dataContext">Data context.</param> public void SetDataContext(VisualDimensionGraph dataContext) { Debug.Assert(dataContext != null, "Can't set a null data context to SingleDimensionGraph."); DataContext = dataContext; _controlPanel.SetDataContext(dataContext); dataContext.DisplayController.PropertyChanged += new PropertyChangedEventHandler(OnGraphVisibilityChanged); ObservableCollection<int> hoverFrames = new ObservableCollection<int>(); Debug.Assert(dataContext.StaticTrajectory is VisualSingleTrajectory, "SingleDimensionGraph must be bind to VisualSingleTrajectory"); VisualSingleTrajectory visualSingleTrajectory = dataContext.StaticTrajectory as VisualSingleTrajectory; visualSingleTrajectory.SelectedFrameIndexes = dataContext.SelectedFrameIndexes; visualSingleTrajectory.HoverFrameIndexes = hoverFrames; _staticGraph.SetDataContext(visualSingleTrajectory); _staticGraph.DisplayController = dataContext.DisplayController.TrajectoryDisplayController; Debug.Assert(dataContext.DeltaTrajectory is VisualSingleTrajectory, "SingleDimensionGraph must be bind to VisualSingleTrajectory"); visualSingleTrajectory = dataContext.DeltaTrajectory as VisualSingleTrajectory; visualSingleTrajectory.SelectedFrameIndexes = dataContext.SelectedFrameIndexes; visualSingleTrajectory.HoverFrameIndexes = hoverFrames; _deltaGraph.SetDataContext(visualSingleTrajectory); _deltaGraph.DisplayController = dataContext.DisplayController.TrajectoryDisplayController; Debug.Assert(dataContext.AccelerationTrajectory is VisualSingleTrajectory, "SingleDimensionGraph must be bind to VisualSingleTrajectory"); visualSingleTrajectory = dataContext.AccelerationTrajectory as VisualSingleTrajectory; visualSingleTrajectory.SelectedFrameIndexes = dataContext.SelectedFrameIndexes; visualSingleTrajectory.HoverFrameIndexes = hoverFrames; _accelerationGraph.SetDataContext(visualSingleTrajectory); _accelerationGraph.DisplayController = dataContext.DisplayController.TrajectoryDisplayController; _waveformGraph.SetDataContext(dataContext.WaveSamples); _durationGraph.SetDataContext(dataContext.PhoneDurations); _wordSegmentGraph.Segments = dataContext.WordSegments; _wordSegmentGraph.TimeAxis = dataContext.TimeAxis; _phoneSegmentGraph.Segments = dataContext.PhoneSegments; _phoneSegmentGraph.TimeAxis = dataContext.TimeAxis; _trajectoryInfoTable.DataContext = _trajectoryInfo; _viewData = dataContext; Debug.Assert(dataContext.StaticTrajectory.YAxis != null, "YAxis of statistic trajectory should not be null!"); _staticYAxis.SetDataContext(dataContext.StaticTrajectory.YAxis); Debug.Assert(dataContext.DeltaTrajectory.YAxis != null, "YAxis of delta trajectory should not be null!"); _deltaYAxis.SetDataContext(dataContext.DeltaTrajectory.YAxis); Debug.Assert(dataContext.AccelerationTrajectory.YAxis != null, "YAxis of acceleration trajectory should not be null!"); _accelerationYAxis.SetDataContext(dataContext.AccelerationTrajectory.YAxis); Debug.Assert(dataContext.WaveSamples.YAxis != null, "YAxis of wave form should not be null!"); _waveformYAxis.SetDataContext(dataContext.WaveSamples.YAxis); }
/// <summary> /// Set data context. /// </summary> /// <param name="dataContext">Data context.</param> public void SetDataContext(VisualDimensionGraph dataContext) { Debug.Assert(dataContext != null, "Can't assign null data context to TrajectoryControlPanel."); DataContext = dataContext.DisplayController; _displayViewData = dataContext.DisplayController; _timeScrollBar.SetDataContext(dataContext.TimeAxis); _zoomControl.SetDataContext(dataContext.TimeAxis); _timeAxisViewData = dataContext.TimeAxis; dataContext.TimeAxis.PropertyChanged += new PropertyChangedEventHandler(TimeAxis_PropertyChanged); }
/// <summary> /// Set data context. /// </summary> /// <param name="graphData">Graph data.</param> /// <param name="trajectoryData">Trajectory data.</param> /// <param name="hoverFrameIndexes">Hover frame indexes.</param> public void SetDataContext(VisualDimensionGraph graphData, VisualMultiTrajectory trajectoryData, ObservableCollection<int> hoverFrameIndexes) { Debug.Assert(graphData != null && trajectoryData != null, "Can't set null data context to MultiTrajectoryGraph."); _dimensionGraphData = graphData; DataContext = _dimensionGraphData; _dimensionGraphData.DisplayController.PropertyChanged += new PropertyChangedEventHandler(OnGraphVisibilityChanged); _frameline.TimeAxis = graphData.TimeAxis; _selectedFrames.TimeAxis = graphData.TimeAxis; _selectedFrames.HighlightFrames = graphData.SelectedFrameIndexes; _selectedMultiFrames.TimeAxis = graphData.TimeAxis; _hightlighFrames.TimeAxis = graphData.TimeAxis; _hightlighFrames.HighlightFrames = hoverFrameIndexes; _hoverFrameIndexes = hoverFrameIndexes; _trajectoryData = trajectoryData; }