예제 #1
0
        internal void Reset()
        {
            this.XPixelPerUnit = double.NaN;
            this.YPixelPerUnit = double.NaN;
            foreach (var sr in GetSeries())
            {
                sr.Reset();
            }
            switch (this.StackMode)
            {
            case StackMode.NotStacked:
                this.YPlottingRange = PlottingRange.Empty;
                break;

            case StackMode.Stacked:
                this.YPlottingRange = PlottingRangeHelper.PlottingRange(new Range(0, double.NaN), this.Owner.YValuePadding);
                break;

            case StackMode.Stacked100:
                this.YPlottingRange = PlottingRangeHelper.PlottingRange(new Range(0, 1), this.Owner.YValuePadding);
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
            Debug.Assert(this.GlobalValueRange.IsEmpty);
        }
예제 #2
0
        internal void UpdateActualPlottingYValueRange()
        {
            double min = !this.Owner.YMinimum.IsNaN() ? this.Owner.YMinimum : this.GlobalValueRange.MinY;
            double max = !this.Owner.YMaximum.IsNaN() ? this.Owner.YMaximum : this.GlobalValueRange.MaxY;

            if (min.IsNaN() && max.IsNaN())
            {
                this.YPlottingRange = PlottingRange.Empty;
                return;
            }
            Range actualRange = GetProperPlottingYRange(new Range(min, max));

            this.YPlottingRange = PlottingRangeHelper.PlottingRange(actualRange, this.Owner.YValuePadding);
        }
예제 #3
0
        internal void UpdateActualPlottingXValueRange()
        {
            double min = !this.Owner.XMinimum.IsNaN() ? this.Owner.XMinimum : this.GlobalValueRange.MinX;
            double max = !this.Owner.XMaximum.IsNaN() ? this.Owner.XMaximum : this.GlobalValueRange.MaxX;

            if (min.IsNaN() && max.IsNaN())
            {
                this.XPlottingRange = PlottingRange.Empty;
                return;
            }

            Range actualRange = new Range(min, max);

            this.XPlottingRange = PlottingRangeHelper.PlottingRange(actualRange, this.Owner.XValuePadding);
        }
예제 #4
0
 internal void OnYValuePaddingChanged()
 {
     this.YPlottingRange = PlottingRangeHelper.PlottingRange(this.YPlottingRange.ActualRange, this.Owner.YValuePadding);
 }