求解释一段代码,与数学椭圆相关
protected override void OnMouseMove(System.Windows.Input.MouseEventArgs e){ base.OnMouseMove(e); double width = ActualWidth - 2 * SystemParameters.ResizeFrameVerticalBorderWidth; double height = ActualHeight - 2 * SystemParameters.ResizeFrameHorizontalBorderHeight - SystemParameters.CaptionHeight; Point ptMouse = e.GetPosition(this);//获取鼠标在窗口中的位置 Point ptCenter = new Point(width / 2, height / 2); Vector vectMouse = ptMouse - ptCenter; double angle = Math.Atan2(vectMouse.X, vectMouse.Y); Vector vectEllipse = new Vector(width / 2 * Math.Cos(angle), height / 2 * Math.Sin(angle));//不懂!!! byte level = (byte)(255 * (1 - Math.Min(1, vectMouse.Length / vectEllipse.Length))); SolidColorBrush brush = ((SolidColorBrush)Background); brush.Color = Color.FromRgb(level, level, level); Console.WriteLine(level);}