วันเสาร์ที่ 10 สิงหาคม พ.ศ. 2556

LAB20
การโหลดภาพเพื่อแสดงลง Form

namespace teynakopha
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Paint(object sender, PaintEventArgs e)
        {
            Bitmap bmp = new Bitmap("d:\\ปี 3 2556\\tey1.jpg");
            this.SetClientSizeCore(bmp.Width + 20, bmp.Height + 20);
            e.Graphics.DrawImage(bmp, 10, 10);
        }
    }
}


การ Zoom in

namespace teynakopha
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Paint(object sender, PaintEventArgs e)
        {
            Bitmap bmp = new Bitmap("d:\\ปี 3 2556\\tey1.jpg");
            Rectangle destrect = new Rectangle(10, 10, bmp.Width / 2, bmp.Height / 2);
            Rectangle srcrect = new Rectangle(0, 0, bmp.Width, bmp.Height);
            this.SetClientSizeCore(destrect.Width + 20, destrect.Height + 20);
            e.Graphics.DrawImage(bmp, destrect, srcrect, GraphicsUnit.Pixel);
        }
    }
}


การ Zoom out
namespace teynakopha
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Paint(object sender, PaintEventArgs e)
        {
            Bitmap bmp = new Bitmap("d:\\ปี 3 2556\\tey1.jpg");
            Rectangle destrect = new Rectangle(10, 10, bmp.Width , bmp.Height );
            Rectangle srcrect = new Rectangle(0, 0, bmp.Width/2, bmp.Height/2);
            this.SetClientSizeCore(destrect.Width + 20, destrect.Height + 20);
            e.Graphics.DrawImage(bmp, destrect, srcrect, GraphicsUnit.Pixel);
        }
    }
}

การพลิกและการหมุนภาพ
namespace teynakopha
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Paint(object sender, PaintEventArgs e)
        {
            Bitmap bmp = new Bitmap("d:\\ปี 3 2556\\tey1.jpg");
            this.SetClientSizeCore(bmp.Width, bmp.Height);
            Rectangle topleft = new Rectangle(0, 0, bmp.Width / 2, bmp.Height / 2);
            Rectangle topright = new Rectangle(bmp.Width / 2, 0, bmp.Width / 2, bmp.Height / 2);
            Rectangle bottomleft = new Rectangle(0, bmp.Height / 2, bmp.Width / 2, bmp.Height / 2);

            Rectangle bottomright = new Rectangle(bmp.Width / 2, bmp.Height / 2, bmp.Width / 2, bmp.Height / 2);

            bmp.RotateFlip(RotateFlipType.RotateNoneFlipNone);
            e.Graphics.DrawImage(bmp, topleft);
            bmp.RotateFlip(RotateFlipType.RotateNoneFlipX);

            e.Graphics.DrawImage(bmp, topright);
            bmp.RotateFlip(RotateFlipType.Rotate180FlipNone);

            e.Graphics.DrawImage(bmp, bottomleft);
            bmp.RotateFlip(RotateFlipType.Rotate180FlipY);
            e.Graphics.DrawImage(bmp, bottomright);
        }
    }
}

การเขียนข้อความลงในภาพ

namespace teynakopha
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Paint(object sender, PaintEventArgs e)
        {
            Bitmap bmp = new Bitmap("d:\\ปี 3 2556\\tey1.jpg");
            this.SetClientSizeCore(bmp.Width, bmp.Height);
            Rectangle destrect = new Rectangle(0, 0, bmp.Width, bmp.Height);
            Brush myBrush = new SolidBrush(Color.Coral);
            e.Graphics.DrawImage(bmp, destrect);
            e.Graphics.DrawString("TEYNAKOPHA",
            new Font("Verdana", 70, FontStyle.Regular), myBrush, 0, 0);

        }
    }
}








วันพุธที่ 7 สิงหาคม พ.ศ. 2556

Lab19

Lab19
 Point[] pt = { new Point(10,22),
                   new Point(188,246),
                   new Point(280,192),
                   new Point(250,48)
                 };
            e.Graphics.FillClosedCurve(Brushes.Blue, pt);
            e.Graphics.DrawClosedCurve(Pens.Red, pt);
การระบายสีด้วย HatchBrush

            this.SetClientSizeCore(500, 600);
            HatchBrush brush;
            int x = 20;
            int y = 20;
            foreach (HatchStyle brushStyle in Enum.GetValues(typeof(HatchStyle)))
            {
                brush = new HatchBrush(brushStyle, Color.Navy, Color.Yellow);
                e.Graphics.FillRectangle(brush, x, y, 40, 20);

                y += 30;
                if ((y + 30) > this.ClientSize.Height)
                {
                    y = 20;
                    x = 180;
                }
            }
การระบายสีด้วย TextureBrush

            Image image = Image.FromFile("C:\\Users\\Public\\Pictures\\Sample Pictures\\Koala.jpg");
            TextureBrush brush = new TextureBrush(image);
            Rectangle rect = new Rectangle(80, 80, 150, 150);
            e.Graphics.FillEllipse(brush, rect);

การระบายสีด้วย TextureBrush ลงบน Panel






วันอังคารที่ 6 สิงหาคม พ.ศ. 2556

Lab 18

Lab18 


   private void Form1_Paint(object sender, PaintEventArgs e)
        {
            Pen blackPen = new Pen(Color.Red, 3);
            Point point1 = new Point(100, 100);
            Point point2 = new Point(200, 100);
            e.Graphics.DrawLine(blackPen, point1, point2);
            blackPen.Dispose();

             Pen pen = new Pen(Color.Red, 3);
             e.Graphics.DrawLine(pen, 10, 50, 220, 50);
          
            pen = new Pen(Color.Green, 2);
            pen.DashStyle = DashStyle.DashDot;
            e.Graphics.DrawLine(pen, 10, 80, 220, 80);

            pen = new Pen(Brushes.DeepSkyBlue, 3);
            e.Graphics.DrawLine(pen, 10, 100, 220, 100);
            pen.Dispose();





จะเป็นการเขียน ที่เพิ่มเข้ามา ด้วยมีการเพิ่ม array เข้ามาช่วยในการเขียน และใช้ loop for ช่วย
{
            Pen[] objpen = new Pen[11];
            
            for (int i = 0; i != 11; i++) 
            {
                objpen[i] = new Pen(Color.Blue, 9);
            }

            objpen[2].EndCap = LineCap.ArrowAnchor;
            objpen[3].EndCap = LineCap.DiamondAnchor;
            objpen[4].EndCap = LineCap.Flat;
            objpen[5].EndCap = LineCap.NoAnchor;
            objpen[6].EndCap = LineCap.Round;
            objpen[7].EndCap = LineCap.RoundAnchor;
            objpen[8].EndCap = LineCap.Square;
            objpen[9].EndCap = LineCap.SquareAnchor;
            objpen[10].EndCap = LineCap.Triangle;
            for (int i = 0; i != 11; i++) 
            {

                e.Graphics.DrawLine(objpen[i], 10, 10 + 20 * i, 200, 10 + 20 * i);
                objpen[i].Dispose();
            }


การวาดเส้นโค้ง

  Pen pen5 = new Pen(Color.Green);
            Point[] pt = {
                          new Point(20,200), new Point(50,20),
                          new Point(100,100), new Point(150,20), 
new Point(200,200)
                          };
            e.Graphics.DrawCurve(pen5, pt);
            pen5.Dispose();

การวาดเส้นโค้งโดย graphics part

 GraphicsPath gp = new GraphicsPath();
            gp.AddCurve(new Point[]
            {
                new Point(100,50),
                new Point(105,40),
                new Point(120,40),
                new Point(130,65),
                new Point(100,100)
            }, 0.5f);

            gp.AddCurve(new Point[]
            {
                new Point(100,100),
                new Point(70,65),
                new Point(80,40),
                new Point(95,40),
                new Point(100,50)
            }, 0.5f);
            e.Graphics.DrawPath(Pens.Red, gp);
        }


การวาดรูป สี่เหลี่ยม ครั้งละรูป 

Pen mypen = new Pen(Color.Blue);
            e.Graphics.DrawRectangle(mypen, 10, 120, 100, 100);
            Rectangle rect = new Rectangle(10, 10, 100, 100);
            e.Graphics.DrawRectangle(mypen, rect);


การวาดรูครั้งละ หลายๆ รูป 

 Pen curPen = new Pen(Color.Blue, 3);
            Rectangle[] rect7 = {    new Rectangle (20, 20, 120, 20),
                                    new Rectangle (20, 50, 120, 30),
                                    new Rectangle (20, 90, 120, 140),
                                    new Rectangle (20, 140, 120, 60),
                               };
            e.Graphics.DrawRectangles(curPen, rect7);

การวาดรูปวงรี

 Rectangle rect0 = new Rectangle(10, 10, 120, 100);
            e.Graphics.DrawEllipse(Pens.Cyan, rect0);

            Rectangle rect1 = new Rectangle(10, 120, 100, 100);
            e.Graphics.FillEllipse(Brushes.DeepPink, rect1);

            Rectangle rect2 = new Rectangle(150, 10, 120, 100);
            e.Graphics.DrawEllipse(Pens.DarkSlateBlue, rect2);

            Rectangle rect3 = new Rectangle(120, 120, 100, 100);
            e.Graphics.FillEllipse(Brushes.Firebrick, rect3);

การวาดส่วนโค้ง

 Pen penEllipse = new Pen(Color.Brown);
            penEllipse.DashStyle = DashStyle.Dash;
            e.Graphics.DrawEllipse(penEllipse, 20, 20, 200, 150);

            Pen penArc = new Pen(Color.Magenta, 2);
            e.Graphics.DrawArc(penArc, 20, 20, 200, 150, 45, 180);


การวาดรูป พาย


 Pen penEllipse1 = new Pen(Color.Brown);
            penEllipse1.DashStyle = DashStyle.Dash;
            e.Graphics.DrawEllipse(penEllipse1, 20, 20, 200, 150);

            Pen penPie = new Pen(Color.Magenta, 2);
            e.Graphics.DrawPie(penPie, 20, 20, 200, 150, 45, 90);
            Pen penPie1 = new Pen(Color.BlueViolet, 2);
            e.Graphics.DrawPie(penPie1, 20, 20, 200, 150, 135, 45);
การสร้างรูป โดย graphics part
      GraphicsPath gpath = new GraphicsPath();
            gpath.AddEllipse(46, 4, 28, 28);
            gpath.AddLine(36, 32, 84, 32);
            gpath.AddLine(100, 80, 88, 84);
            gpath.AddLine(76, 50, 74, 84);
            gpath.AddLine(90, 150, 74, 84);
            gpath.AddLine(60, 100, 46, 150);
            gpath.AddLine(32, 150, 46, 84);
            gpath.AddLine(44, 50, 32, 84);
            gpath.AddLine(20, 80, 36, 32);
            e.Graphics.FillPath(Brushes.Blue, gpath);