public void ClearPoints() { foreach (var view in this.ChartContainer.Children) { SearchCurveView curveView = (SearchCurveView)view; curveView.ClearPoints(); } this.index = 0; }
public SearchCurveView AddCurveView(string curveViewName, string displayName, double height = 200.0) { SearchCurveView curveView = new SearchCurveView(this); curveView.CurveViewName = curveViewName; curveView.TimeAxisScale = this.TimeAxisScale; curveView.Height = height + ChartView.ViewGap; this.ChartContainer.Children.Add(curveView); this.AddCurveViewCheckItem(curveViewName, displayName); return(curveView); }
private void ZoomChartView(double scale) { double centerX = 0.0; foreach (var view in this.ChartContainer.Children) { SearchCurveView curveView = (SearchCurveView)view; curveView.UpdateCurveScale(scale); centerX = curveView.CenterX; } this.UpdateTimeAxisScale(scale, centerX); }
private void OnItemChecked(string curveViewName, bool itemChecked) { foreach (var cv in this.ChartContainer.Children) { SearchCurveView curveView = (SearchCurveView)cv; if (curveView.CurveViewName == curveViewName) { curveView.Visibility = itemChecked ? Visibility.Visible : Visibility.Collapsed; break; } } }
public void SetDataPoints(List <Dictionary <string, object> > dataSource) { double g = this.Graduation; foreach (var view in this.ChartContainer.Children) { SearchCurveView curveView = (SearchCurveView)view; string key = curveView.CurveName.ToLower(); int index = 0; foreach (var e in dataSource) { if (e.ContainsKey(key)) { string valueStr = (string)e[key]; double value = string.IsNullOrEmpty(valueStr) ? 0.0 : double.Parse(valueStr); curveView.AddCurvePoint(new Point(index * g, value)); } index++; } } }
private void TrackTimeLine(MouseEventArgs e) { bool timed = false; string timeLabel = string.Empty; foreach (var view in this.ChartContainer.Children) { SearchCurveView curveView = (SearchCurveView)view; Point point = e.GetPosition((UIElement)curveView.View); double x = point.X; double centerX = curveView.CenterX; if (!timed && x >= 0) { double v = (x - centerX) / scale + centerX; double index = v / Grad / IntervalCount; timeLabel = this.GetFormatDateTime(this.currentBaseTime, index, IntervalCount * this.Interval); } curveView.TrackTimeLine(point, timeLabel); } }
public SearchCurveView AddCurveView(string curveViewName, string displayName, double height = 200.0) { SearchCurveView curveView = new SearchCurveView(this); curveView.CurveViewName = curveViewName; curveView.TimeAxisScale = this.TimeAxisScale; curveView.Height = height + ChartView.ViewGap; this.ChartContainer.Children.Add(curveView); this.AddCurveViewCheckItem(curveViewName, displayName); return curveView; }