AnimatGuiCtrls.Controls.TimeRuler.RecalculateDivisions C# (CSharp) Method

RecalculateDivisions() private method

private RecalculateDivisions ( ) : void
return void
		private void RecalculateDivisions()
		{
			if(_bAutomaticTimeScale)
			{
				int iSize = (this.Orientation == enumOrientation.orHorizontal) ? Width : Height;
				int iOptimumDivisions;
				
				if(iSize>100)
					iOptimumDivisions = iSize/100;
				else
					iOptimumDivisions = 1;

				int iOptimumScale = iSize/iOptimumDivisions;
				int iScale=0, iDiff=0, iInterval=0;
				int iMinDiff = -1, iMinInterval = 1;

				for(int iIndex=0; iIndex<_aryIntervals.Length; iIndex++)
				{
					iInterval = _aryIntervals[iIndex];
					iScale = (DefaultScale(_ScaleMode, _ZoomFactor) * iInterval) / DefaultMajorInterval(_ScaleMode);
					iDiff = Math.Abs(iOptimumScale - iScale);
					
					if(iDiff < iMinDiff || iMinDiff == -1)
					{
						iMinDiff = iDiff;
						iMinInterval = iInterval;
					}
				}
				
				if(iMinInterval > 0) MajorInterval = iMinInterval;
				iInterval = (int) _Scale;
			}
		}