Esempio n. 1
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            bmp = new Bgra32BitmapTool(100, 100, 10);
            bmp.PropertyChanged += Bmp_PropertyChanged;
            bmp.SaveCheckpoint();

            this.CurrentBackColor = Colors.White;
            this.CurrentForeColor = Colors.Black;

            this.CurrentTool = ToolType.Freehand_DrawLine;
        }
Esempio n. 2
0
        private void MenuItem_EasterEgg_Click(object sender, RoutedEventArgs e)
        {
            if (EasterEgg_Timer != null)
            {
                EasterEgg_Timer.Stop();
                EasterEgg_Timer     = null;
                EasterEgg_Counter   = 0;
                EasterEgg_isGrowing = true;
                return;
            }
            bmp = new Bgra32BitmapTool(
                width: 113,
                height: 213,
                xResolution: 96.0,
                yResolution: 96.0);
            bmp.PropertyChanged += Bmp_PropertyChanged;

            bmp.Ellipse_BresenhamRect(10, 10, 100, 100, Colors.Orange);

            bmp.Circle_Bresenham(40, 40, 5, Colors.Orange);
            bmp.Fill_FF4_Dynamic(40, 40, Colors.LightGray);

            bmp.Circle_Bresenham(70, 40, 5, Colors.Orange);
            bmp.Fill_FF4_Dynamic(70, 40, Colors.LightGray);

            bmp.QuadraticBezier(30, 75, 55, 95, 80, 75, Colors.Orange);

            bmp.Rectangle_Empty(1, 100, 111, 210, Colors.Blue);
            bmp.Rectangle_Empty(16, 115, 96, 195, Colors.Blue);
            bmp.Fill_FF4_Dynamic(2, 101, Colors.SteelBlue);

            bmp.Apply();
            bmp.SaveCheckpoint();
            EasterEgg_Timer          = new Timer(2 * 1000);
            EasterEgg_Timer.Elapsed += (_sender, _e) =>
            {
                if (EasterEgg_isGrowing)
                {
                    if (EasterEgg_Counter < EasterEgg_MaxGrow)
                    {
                        EasterEgg_Counter++;
                    }
                    else
                    {
                        EasterEgg_isGrowing = false;
                        EasterEgg_Counter--;
                    }
                }
                else
                if (EasterEgg_Counter > 0)
                {
                    EasterEgg_Counter--;
                }
                else
                {
                    EasterEgg_isGrowing = true;
                    EasterEgg_Counter++;
                }
                this.Dispatcher.Invoke(delegate
                {
                    bmp.Rotate_90C();
                    if (EasterEgg_isGrowing)
                    {
                        bmp.Scale(bmp.Width * 2, bmp.Height * 2, bmp.XResolution, bmp.YResolution);
                    }
                    else
                    {
                        bmp.Scale(bmp.Width / 2, bmp.Height / 2, bmp.XResolution, bmp.YResolution);
                    }
                    bmp.Apply();
                    bmp.SaveCheckpoint();
                });
            };
            EasterEgg_Timer.Start();
        }