Fractrace.PictureArt.FastPreviewRenderer.GetAmbientValue C# (CSharp) Method

GetAmbientValue() protected method

Get the value, which is used in computing the field of view.
protected GetAmbientValue ( double ypos ) : double
ypos double
return double
        protected double GetAmbientValue(double ypos)
        {
            double mainDeph = maxY - minY;

            if (ypos == double.MinValue)
                ypos = minY;
            double ydNormalized = (ypos - minY) / mainDeph;
            double ydist = 0;

            double maxDist = (maxFieldOfView - minFieldOfView);

            if (ydNormalized > maxFieldOfView)
            {
                ydist = ydNormalized - maxFieldOfView;
                maxDist = 1 - maxFieldOfView;
                //ydNormalized = 0;
                //return 0;
            }
            else
            {
                if (ydNormalized < minFieldOfView)
                {
                    ydist = minFieldOfView - ydNormalized;
                    maxDist = minFieldOfView;
                    //ydNormalized = 0;
                    //return 0;
                }
                else
                {
                    ydist = 0; // im field of view
                    maxDist = 0;
                }
            }

            if (maxDist != 0)
            {
                ydist = ydist / maxDist;
            }

            ydNormalized = 1.0 - ydist;

            // Test only
            if (ydNormalized > 1)
                ydNormalized = 1;

            if (ydNormalized < 0)
                ydNormalized = 0;

            ydNormalized = Math.Sqrt(ydNormalized);
            ydNormalized = Math.Sqrt(ydNormalized);
            ydNormalized = Math.Sqrt(ydNormalized);
            ydNormalized = Math.Sqrt(ydNormalized);
            //  ydNormalized = Math.Sqrt(ydNormalized);

            return ydNormalized;
        }