internal ValueGrid( GridRange gr, double low, double up, ValueAxisUnit vAxis, double basevalue ) { double grLower = Double.MaxValue; double grUpper = Double.MinValue; if ( gr != null ) { this.rigid = gr.Rigid; grLower = gr.LowerValue; grUpper = gr.UpperValue; } this.lower = low; this.upper = up; this.vAxis = vAxis; this.baseValue = basevalue; // Fill in the scale values double tmp = 1; for (int i = 1; i < 7; i++) { tmp *= baseValue; scaleValues[6 - i] = tmp; } tmp = 1; for (int i = 7; i < scaleValues.Length; i++) { tmp *= baseValue; scaleValues[i] = ( 1 / tmp ); } // Set an appropriate value axis it not given yet SetValueAxis(); if ( !rigid ) { this.lower = ( lower == grLower ? grLower : this.vAxis.GetNiceLower( lower ) ); this.upper = ( upper == grUpper ? grUpper : this.vAxis.GetNiceHigher( upper ) ); } }
/// <summary> /// /// </summary> /// <param name="lower"></param> /// <param name="upper"></param> /// <param name="rigid"></param> public void SetGridRange(double lower, double upper, bool rigid) { gridRange = new GridRange( lower, upper, rigid ); }