游戏技术基础:实验记录一
net: C#
1、创建一个Windows应用程序,点击按钮后,通过Brush对象将绘制的矩形填充为红色(如图所示)。
1 | csharp using System; |
需要注意的是,需要在窗体的 Paint 事件中绘制矩形,并且需要在绘制完毕后释放画刷资源。
现在已经能生成一个红色矩形了,接下来就是让它在点击按钮后生成。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 csharp using System;
using System.Drawing;
using System.Windows.Forms;
namespace RectangleFillExample {
public partial class Form1 :
Form {
public Form1() {
InitializeComponent();
}
private void RedRect_Click(object sender, EventArgs e) {
// 创建一个红色画刷
SolidBrush brush = new SolidBrush(Color.Red);
// 创建一个矩形
Rectangle rect = new Rectangle(50, 50, 100, 100);
// 使用画刷填充矩形
Graphics graphics = this.CreateGraphics();
graphics.FillRectangle(brush, rect);
// 释放画刷和绘图资源
graphics.Dispose();
brush.Dispose();
}
}
}
在该代码中,我们为窗体添加了一个 btnDraw 按钮,并在 btnDraw_Click 事件中调用绘制矩形的代码。需要注意的是,我们需要先获取窗体的 Graphics 对象,然后使用该对象填充矩形,最后释放画刷和绘图资源。
2、创建一个Windows应用程序,向窗体中添加两个Button按钮,分别用于执行绘制直线的两种方法(如图所示)。
1 | private void button1_Click(object sender, EventArgs e) |
调用了两种绘制直线的重载,一个是直接指定开始点和结束点的坐标button1,一个是通过点类传参button2,每次绘制完成后不要忘了释放pen和graphics。

3、创建一个Windows应用程序,通过Graphics类中的DrawEllipse方法绘制一个线条宽度为3的黑色椭圆(如图所示)。
1 | private void button1_Click(object sender, EventArgs e) |
这里根据提示,DrawEllipse 方法需要一个 RectangleF 限制椭圆的位置,因此可以定义先一个 RectangleF 类,简单的定义方法如下:
1 | public RectangleF (float x, float y, float width, float height); |

4、创建一个Windows应用程序,使用Graphics类中的DrawArc方法绘制一条线条宽度为3的黑色圆弧(如图所示)。
1 | private void button1_Click(object sender, EventArgs e) |
和画椭圆是一样的,只是多了一个起始和终止角度。
5、创建一个Windows应用程序,通过Graphics类中的DrawPie方法绘制一个线条宽度为3的黑色扇形,它的起始坐标分别为50和50(如图所示)。
1 | private void button1_Click(object sender, EventArgs e) |
与画圆弧同理。
6、创建一个Windows应用程序,通过Graphics类中的DrawPolygon方法绘制一个线条宽度为3的黑色多边形(如图所示)。
1 | private void button1_Click(object sender, EventArgs e) |
画多边形只要告诉DrawPolygon方法用的笔和几个顶点坐标即可。
