/// <summary> /// Sets the conversion of ticks. /// </summary> /// <param name="min">The minimal double value.</param> /// <param name="minDate">The minimal date, corresponding to minimal double value.</param> /// <param name="max">The maximal double value.</param> /// <param name="maxDate">The maximal date, correspondong to maximal double value.</param> public void SetConversion(double min, DateTime minDate, double max, DateTime maxDate) { var conversion = new DateTimeToDoubleConversion(min, minDate, max, maxDate); ConvertToDouble = conversion.ToDouble; ConvertFromDouble = conversion.FromDouble; }
public GenericChartPlotter() { if (this is GenericChartPlotter <double, TVertical> ) { var plotter = this as GenericChartPlotter <double, TVertical>; plotter.HorizontalToDouble = x => x; plotter.DoubleToHorizontal = x => x; plotter.HorizontalAxis = new HorizontalAxis(); } else if (this is GenericChartPlotter <TimeSpan, TVertical> ) { var plotter = this as GenericChartPlotter <TimeSpan, TVertical>; var conversion = new TimeSpanToDoubleConversion(0, new TimeSpan(), 1, TimeSpan.FromHours(1)); plotter.HorizontalToDouble = conversion.ToDouble; plotter.DoubleToHorizontal = conversion.FromDouble; plotter.HorizontalAxis = new HorizontalTimeSpanAxis(); plotter.HorizontalAxis.ConvertToDouble = conversion.ToDouble; plotter.HorizontalAxis.ConvertFromDouble = conversion.FromDouble; } else if (this is GenericChartPlotter <DateTime, TVertical> ) { var plotter = this as GenericChartPlotter <DateTime, TVertical>; var conversion = new DateTimeToDoubleConversion(0, DateTime.Now, 1, DateTime.Now.AddHours(1)); plotter.HorizontalToDouble = conversion.ToDouble; plotter.DoubleToHorizontal = conversion.FromDouble; plotter.HorizontalAxis = new HorizontalDateTimeAxis(); plotter.HorizontalAxis.ConvertToDouble = conversion.ToDouble; plotter.HorizontalAxis.ConvertFromDouble = conversion.FromDouble; } if (this is GenericChartPlotter <THorizontal, double> ) { var plotter = this as GenericChartPlotter <THorizontal, double>; plotter.VerticalToDouble = x => x; plotter.DoubleToVertical = x => x; plotter.VerticalAxis = new VerticalAxis(); } else if (this is GenericChartPlotter <THorizontal, TimeSpan> ) { var plotter = this as GenericChartPlotter <THorizontal, TimeSpan>; var conversion = new TimeSpanToDoubleConversion(0, new TimeSpan(), 1, TimeSpan.FromHours(1)); plotter.VerticalToDouble = conversion.ToDouble; plotter.DoubleToVertical = conversion.FromDouble; plotter.VerticalAxis = new VerticalTimeSpanAxis(); } else if (this is GenericChartPlotter <THorizontal, DateTime> ) { var plotter = this as GenericChartPlotter <THorizontal, DateTime>; var conversion = new DateTimeToDoubleConversion(0, DateTime.Now, 1, DateTime.Now.AddHours(1)); plotter.VerticalToDouble = conversion.ToDouble; plotter.DoubleToVertical = conversion.FromDouble; plotter.VerticalAxis = new VerticalDateTimeAxis(); } }