public override void Load()
        {
            //draw 1
            FormTestWinGLControl form = new FormTestWinGLControl();
            var canvas = PixelFarm.Drawing.DrawingGL.CanvasGLPortal.P.CreateCanvas(0, 0, 800, 600);

            PixelFarm.Drawing.Bitmap       bmp    = null;
            PixelFarm.Drawing.TextureBrush tbrush = null;
            form.SetGLPaintHandler((o, s) =>
            {
                canvas.ClearSurface(PixelFarm.Drawing.Color.White);
                if (tbrush == null)
                {
                    var bitmap = new System.Drawing.Bitmap("../../../SampleImages/plain01.png");
                    bmp        = new PixelFarm.Drawing.Bitmap(bitmap.Width, bitmap.Height, bitmap);
                    tbrush     = new PixelFarm.Drawing.TextureBrush(bmp);
                }
                //2. fill polygon with gradient brush
                canvas.FillPolygon(
                    tbrush,
                    new PixelFarm.Drawing.PointF[] {
                    new PixelFarm.Drawing.PointF(60, 50),
                    new PixelFarm.Drawing.PointF(100, 50),
                    new PixelFarm.Drawing.PointF(70, 100)
                });

                canvas.Note1 = 1; //temp
                canvas.FillPolygon(
                    tbrush,
                    new PixelFarm.Drawing.PointF[] {
                    new PixelFarm.Drawing.PointF(0, 50),
                    new PixelFarm.Drawing.PointF(50, 50),
                    new PixelFarm.Drawing.PointF(10, 100)
                });

                canvas.Note1 = 0;
                //-------------------------------------------------------------------------
            });
            form.Show();
        }
Exemple #2
0
        public override void Load()
        {
            //draw 1
            FormTestWinGLControl form = new FormTestWinGLControl();
            var canvas = PixelFarm.Drawing.DrawingGL.CanvasGLPortal.P.CreateCanvas(0, 0, 800, 600);

            PixelFarm.Drawing.Bitmap       bmp    = null;
            PixelFarm.Drawing.TextureBrush tbrush = null;
            form.SetGLPaintHandler((o, s) =>
            {
                canvas.ClearSurface(PixelFarm.Drawing.Color.White);
                //if (tbrush == null)
                //{
                //    var bitmap = new System.Drawing.Bitmap("../../../SampleImages/plain01.png");
                //    bmp = new PixelFarm.Drawing.Bitmap(bitmap.Width, bitmap.Height, bitmap);
                //    tbrush = new PixelFarm.Drawing.TextureBrush(bmp);
                //}

                //fill rectangle is easy
                //canvas.FillRectangle(linearGrBrush, 0, 0, 150, 150);
                //canvas.FillRectangle(PixelFarm.Drawing.Color.Blue, 0, 0, 150, 150);
                //----------------------------------------------------
                //2. fill polygon with gradient brush


                canvas.FillPolygon(
                    PixelFarm.Drawing.Color.Red,
                    new PixelFarm.Drawing.PointF[] {
                    new PixelFarm.Drawing.PointF(0, 50),
                    new PixelFarm.Drawing.PointF(50, 50),
                    new PixelFarm.Drawing.PointF(10, 100)
                });
                canvas.Note1      = 1; //temp
                var linearGrBrush = new LinearGradientBrush(
                    new PixelFarm.Drawing.PointF(25, 25),
                    PixelFarm.Drawing.Color.Black,
                    new PixelFarm.Drawing.PointF(100, 100),
                    PixelFarm.Drawing.Color.Blue);
                //canvas.FillPolygon(
                //    tbrush,
                //    new PixelFarm.Drawing.PointF[]{
                //            new PixelFarm.Drawing.PointF(60, 50),
                //            new PixelFarm.Drawing.PointF(100, 50),
                //            new PixelFarm.Drawing.PointF(70, 100)});

                //canvas.FillPolygon(
                //    linearGrBrush,
                //    new PixelFarm.Drawing.PointF[]{
                //            new PixelFarm.Drawing.PointF(60, 50),
                //            new PixelFarm.Drawing.PointF(100, 50),
                //            new PixelFarm.Drawing.PointF(70, 100)});
                canvas.FillPolygon(
                    linearGrBrush,
                    new PixelFarm.Drawing.PointF[] {
                    new PixelFarm.Drawing.PointF(60, 50),
                    new PixelFarm.Drawing.PointF(100, 50),
                    new PixelFarm.Drawing.PointF(70, 100)
                });
                canvas.Note1 = 0;
                //-------------------------------------------------------------------------
            });
            form.Show();
        }
Exemple #3
0
        public override void Load()
        {
            //draw 1
            FormTestWinGLControl form = new FormTestWinGLControl();
            //form.GetCanvasControl().Visible = false;
            //System.Windows.Forms.Panel pp = new Panel();
            //pp.Size = new System.Drawing.Size(500, 500);
            //pp.BackColor = System.Drawing.Color.Black;
            //form.Controls.Add(pp);
            //WinGdiPortal.P.CreateCanvas(0, 0, 800, 600);

            var canvas = PixelFarm.Drawing.DrawingGL.CanvasGLPortal.P.CreateCanvas(0, 0, 800, 600);

            PixelFarm.Drawing.Bitmap bmp = null;
            form.SetGLPaintHandler((o, s) =>
            {
                canvas.ClearSurface(PixelFarm.Drawing.Color.White);
                canvas.FillRectangle(
                    PixelFarm.Drawing.Color.Blue,
                    0, 0, 200, 200);

                canvas.SetCanvasOrigin(180, 180);
                //----------------------
                canvas.FillRectangle(
                    PixelFarm.Drawing.Color.Green,
                    0, 0, 100, 100);
                //----------------------
                canvas.SetCanvasOrigin(0, 0);
                //----------------------
                //drawimgage
                if (bmp == null)
                {
                    var bitmap = new System.Drawing.Bitmap("../../../SampleImages/plain01.png");
                    bmp        = new PixelFarm.Drawing.Bitmap(bitmap.Width, bitmap.Height, bitmap);
                }

                //draw full image to destination
                //canvas.DrawImage(bmp, GenRect(0, 0, bmp.Width / 2, bmp.Height / 2));
                canvas.DrawImage(bmp, new PixelFarm.Drawing.RectangleF(0, 0, bmp.Width / 2, bmp.Height / 2));
                //----------------------
                //1. draw from some part of src image to dest
                //canvas.DrawImage(bmp,
                //    //dest
                //    //new PixelFarm.Drawing.RectangleF(0, 350, bmp.Width, bmp.Height),
                //    new PixelFarm.Drawing.RectangleF(0, 350, bmp.Width, bmp.Height),
                //    //src
                //    new PixelFarm.Drawing.RectangleF(0, 0, 100, 100));
                canvas.DrawImage(bmp,
                                 //dest
                                 //new PixelFarm.Drawing.RectangleF(0, 350, bmp.Width, bmp.Height),
                                 new PixelFarm.Drawing.RectangleF(0, 350, bmp.Width / 2, bmp.Height / 2),
                                 //src
                                 new PixelFarm.Drawing.RectangleF(0, 0, bmp.Width, bmp.Height));

                ////----------------------
                canvas.DrawImage(bmp,
                                 //dest
                                 new PixelFarm.Drawing.RectangleF(350, 350, bmp.Width / 2, bmp.Height / 2),
                                 //src
                                 new PixelFarm.Drawing.RectangleF(100, 100, bmp.Width - 100, bmp.Height - 100));
                ////----------------------
                //2.
                {
                    var refBmp = new PixelFarm.Drawing.ReferenceBitmap(bmp, 50, 50, 100, 100);
                    canvas.DrawImage(refBmp,
                                     new PixelFarm.Drawing.RectangleF(300, 100, refBmp.Width, refBmp.Height));
                }
                ////----------------------
                //3. small glyph
                int startAt    = 50;
                int lineHeight = 20;
                int drawXPos   = 300;
                int drawYPos   = 50;
                for (int i = 0; i < 5; ++i)
                {
                    var refBmp = new PixelFarm.Drawing.ReferenceBitmap(bmp, 50, startAt, 50, 20);
                    canvas.DrawImage(refBmp,
                                     new PixelFarm.Drawing.RectangleF(drawXPos, drawYPos, refBmp.Width, refBmp.Height));
                    drawXPos += 50;
                    startAt  += lineHeight;
                }

                canvas.StrokeColor = PixelFarm.Drawing.Color.Blue;

                canvas.DrawLine(0, 0, 800, 800);
            });
            form.Show();
        }