**เพิ่มusing System.Drawing.Drawing2D; ด้วย
การวาดเส้นตรง เป็นการเชื อมต่อระหว่างจุด จำนวน 2 จุด โดยใช้ออบเจกต์ Pen
private void Form1_Paint(object sender, PaintEventArgs e)
{
Pen blackPen = new Pen(Color.Black, 3);
Point point1 = new Point(100, 100);
Point point2 = new Point(200, 100);
e.Graphics.DrawLine(blackPen, point1, point2);
blackPen.Dispose();
}
-----------------------------------------------------------------
การวาดเส้นตรงด้วย pen style และ brush
-----------------------------------------------
การวาดเส้นตรงด้วย pen style และ brush
private void Form1_Paint(object sender, PaintEventArgs e)
{
Pen pen = new Pen(Color.Red);
e.Graphics.DrawLine(pen, 10, 50, 220, 50);
pen = new Pen(Color.Green, 2);
pen.DashStyle = System.Drawing.Drawing2D.DashStyle.DashDot;
e.Graphics.DrawLine(pen, 10, 80, 220, 80);
pen = new Pen(Brushes.DeepSkyBlue, 4);
e.Graphics.DrawLine(pen, 10, 120, 220, 120);
pen.Dispose();
}
-----------------------------------------------
การกำหนดจุดปลายของเส้นตรงด้วย style แบบต่างๆ
private void Form1_Paint(object sender, PaintEventArgs e)
{
Pen[] objPen = new Pen[11];
for (int i = 0; i != 11; i++)
{
objPen[i] = new Pen(Color.Blue, 9);
}
objPen[0].EndCap = LineCap.AnchorMask;
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 = .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();
}
}
------------------------------------------------
การวาดเส้นโค้ง
private void Form1_Paint(object sender, PaintEventArgs e)
{
Pen pen = new Pen(Color.Blue);
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(pen, pt);
pen.Dispose();
}
--------------------------------------------
การวาดเส้นโค้งด้วย Graphics path
private void Form1_Paint(object sender, PaintEventArgs e)
{
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);
}
---------------------------------------------------
การวาดสีเ หลี่ย มครั้ง ละรูปเดียว
private void Form1_Paint(object sender, PaintEventArgs e)
{
Pen mypen = new Pen(Color.Red);
e.Graphics.DrawRectangle(mypen, 10, 120, 100, 100);
Rectangle rect = new Rectangle(10, 10, 100, 100);
e.Graphics.DrawRectangle(mypen, rect);
}
การวาดสีเ หลีย มพร้อมกันครัง ละหลายๆ รูป
private void Form1_Paint(object sender, PaintEventArgs e)
{
Pen curpen = new Pen(Color.Red,4);
Rectangle[] rect = { new Rectangle (20,20,120,20),
new Rectangle (20,50,120,30),
new Rectangle (20,90,120,40),
new Rectangle (20,140,120,60),
};
e.Graphics.DrawRectangles(curpen, rect);
}
-----------------------------------------
การวาดวงกลมและวงรี
private void Form1_Paint(object sender, PaintEventArgs e)
{
Rectangle rect = new Rectangle(10, 10, 120, 100);
e.Graphics.DrawEllipse(Pens.Cyan, rect);
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);
}
----------------------------------------------
การวาดส่วนโค้ง (Arc)
private void Form1_Paint(object sender, PaintEventArgs e)
{
Pen penEllipse = new Pen(Color.Green);
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);
}
---------------------------------------
การวาดรูป Pie
private void Form1_Paint(object sender, PaintEventArgs e)
{
Pen penEllipse = new Pen(Color.Green);
penEllipse.DashStyle = DashStyle.Dash;
e.Graphics.DrawEllipse(penEllipse, 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 path จากรูปต่างๆ
private void Form1_Paint(object sender, PaintEventArgs e)
{
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, 150);
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);
}
ไม่มีความคิดเห็น:
แสดงความคิดเห็น