StandardizedDiffuseAlbedoMaps.GraphPanel.OnPaint C# (CSharp) Method

OnPaint() protected method

protected OnPaint ( PaintEventArgs e ) : void
e PaintEventArgs
return void
        protected override void OnPaint( PaintEventArgs e )
        {
            base.OnPaint( e );

            if ( m_Bitmap != null )
                e.Graphics.DrawImage( m_Bitmap, 0, 0 );

            if ( m_CameraCalibration == null )
                return;

            int	X0 = 10;
            int	X1 = Width - 10;
            int	Y0 = Height - 10;

            Point	P = PointToClient( Control.MousePosition );
            float	x = (float) (P.X - X0) / (X1 - X0);
            float	StandardReflectance = x;//0.02f + (0.99f - 0.02f) * x;
            for ( int i=1; i < m_CameraCalibration.m_Reflectances.Length; i++ )
            {
                if ( StandardReflectance < m_CameraCalibration.m_Reflectances[i-1].StandardReflectance || StandardReflectance > m_CameraCalibration.m_Reflectances[i].StandardReflectance )
                    continue;

                float	t = (StandardReflectance - m_CameraCalibration.m_Reflectances[i-1].StandardReflectance) / (m_CameraCalibration.m_Reflectances[i].StandardReflectance - m_CameraCalibration.m_Reflectances[i-1].StandardReflectance);
                float	Y = m_CameraCalibration.m_Reflectances[i-1].m_LuminanceMeasured + t * (m_CameraCalibration.m_Reflectances[i].m_LuminanceMeasured - m_CameraCalibration.m_Reflectances[i-1].m_LuminanceMeasured);

                string	LumText = "Reflectance=" + (100.0f * StandardReflectance).ToString( "G4" ) + "%";
                SizeF	S = e.Graphics.MeasureString( LumText, Font );

                float	TextOffsetX = P.X < 0.5f * Width ? 0 : -S.Width - 6;
                float	TextOffsetY = P.Y < 0.5f * Height ? 40 : 0;

                e.Graphics.DrawString( "Y=" + Y.ToString( "G4" ), Font, Brushes.Black, TextOffsetX + P.X + 6, TextOffsetY + P.Y - 24);
                e.Graphics.DrawString( LumText, Font, Brushes.Black, TextOffsetX + P.X + 6, TextOffsetY + P.Y - 16 );
                break;
            }
        }