/// <summary> /// Calculates actual range. /// </summary> /// <returns>Returns the calculated range.</returns> protected override DoubleRange CalculateActualRange() { if (this.Minimum == null && this.Maximum == null) { // Executes when Minimum and Maximum aren't set. return(LogarithmicAxisHelper.CalculateActualRange(this, base.CalculateActualRange(), this.LogarithmicBase)); } else if (this.Minimum != null && this.Maximum != null) { // Executes when Minimum and Maximum aren set. return(this.ActualRange); } else { // Executes when either Minimum or Maximum is set. DoubleRange range = this.CalculateBaseActualRange(); range = LogarithmicAxisHelper.CalculateActualRange(this, range, this.LogarithmicBase); if (this.Minimum != null) { return(new DoubleRange(ActualRange.Start, range.End)); } else if (this.Maximum != null) { return(new DoubleRange(range.Start, ActualRange.End)); } return(range); } }
protected override DoubleRange CalculateActualRange() { if (Minimum == null && Maximum == null) // Executes when Minimum and Maximum aren't set. { DoubleRange range = LogarithmicAxisHelper.CalculateActualRange(this, CalculateBaseActualRange(), LogarithmicBase); // Execute when include the annotion range for Auto Range if (IncludeAnnotationRange) { foreach (var annotation in (Area as SfChart).Annotations) { if (Orientation == Orientation.Vertical && annotation.CoordinateUnit == CoordinateUnit.Axis && annotation.YAxis == this) { range += new DoubleRange( Annotation.ConvertData(annotation.Y1, this), annotation is TextAnnotation ? Annotation.ConvertData(annotation.Y1, this) : annotation is ImageAnnotation ? Annotation.ConvertData((annotation as ImageAnnotation).Y2, this) : Annotation.ConvertData((annotation as ShapeAnnotation).Y2, this)); } else if (Orientation == Orientation.Horizontal && annotation.CoordinateUnit == CoordinateUnit.Axis && annotation.XAxis == this) { range += new DoubleRange( Annotation.ConvertData(annotation.X1, this), annotation is TextAnnotation ? Annotation.ConvertData(annotation.X1, this) : annotation is ImageAnnotation ? Annotation.ConvertData((annotation as ImageAnnotation).X2, this) : Annotation.ConvertData((annotation as ShapeAnnotation).X2, this)); } } } return(range); } else if (Minimum != null && Maximum != null) // Executes when Minimum and Maximum is set. { return(ActualRange); } else { // Executes when either Minimum or Maximum is set. DoubleRange range = CalculateBaseActualRange(); range = LogarithmicAxisHelper.CalculateActualRange(this, range, LogarithmicBase); if (Minimum != null) { return(new DoubleRange(ActualRange.Start, range.End)); } if (Maximum != null) { return(new DoubleRange(range.Start, ActualRange.End)); } return(range); } }