AbsRatioDiff() private static method

private static AbsRatioDiff ( float x, float y ) : float
x float
y float
return float
        private static int[] GetGridDivision(Rect rect, int minimumNr, int labelHeight)
        {
            float num  = Mathf.Sqrt(rect.width * rect.height / (float)minimumNr);
            int   num2 = Mathf.FloorToInt(rect.width / num);
            int   num3 = Mathf.FloorToInt(rect.height / (num + (float)labelHeight));

            while (num2 * num3 < minimumNr)
            {
                float num4 = ObjectPreview.AbsRatioDiff((float)(num2 + 1) / rect.width, (float)num3 / (rect.height - (float)(num3 * labelHeight)));
                float num5 = ObjectPreview.AbsRatioDiff((float)num2 / rect.width, (float)(num3 + 1) / (rect.height - (float)((num3 + 1) * labelHeight)));
                if (num4 < num5)
                {
                    num2++;
                    if (num2 * num3 > minimumNr)
                    {
                        num3 = Mathf.CeilToInt((float)minimumNr / (float)num2);
                    }
                }
                else
                {
                    num3++;
                    if (num2 * num3 > minimumNr)
                    {
                        num2 = Mathf.CeilToInt((float)minimumNr / (float)num3);
                    }
                }
            }
            return(new int[]
            {
                num2,
                num3
            });
        }