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(); }
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(); }
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(); }