初识EasyX
在前面的C语言制作的游戏画面都十分粗糙,只用printf只能用一些字符来表示图像,为了能够绘制能加精美的图像,我们就用到了EasyX,EasyX是一套图形交互库,是以后的游戏以及图形的制作不可或缺的。
EasyX的初使用
绘制一个圆
想要使用EasyX,我们首先要引用出EasyX库:
#include<graphics.h>
既然我们要绘出一个圆,首先就要初始化一个画板,我们用initgraph()来定义画板,假如说我们要初始化一个640x480的画板:
initgraph(640, 480);
然后就是定义圆周和圆内部的颜色,分别用setcolor()和setfillcolor()来定义:
setcolor(YELLOW); //圆的线条为黄色
setfillcolor(BLUE); //圆的填充为蓝色
最后就是定义出这个圆:
fillcircle(100, 100, 20);//圆心为(100,100),半径为20
注意,不可先定义圆再填充颜色!
#include<graphics.h>
#include<conio.h>
int main()
{
initgraph(640, 480); //初始化640*480的画布
setcolor(YELLOW); //圆的线条为黄色
setfillcolor(BLUE); //圆的填充为蓝色
fillcircle(100, 100, 20);//圆心为(100,100),半径为20
_getch(); //按任意键继续
closegraph(); //关闭图形界面
return 0;
}
这是完整代码,然后运行结果如下:
类似的还有许多绘图函数,例如:
line(x1, y1, x2, y2); //画直线,(x1, y1)和(x2, y2)是直线的两个端点
circle(x, y, r); //画圆,圆心为(x, y),半径为r
putpixel(x, y, c); //画点(x, y),像素的颜色为c
solidrectangle(x1, y1, x2, y2); //画填充矩形,两个分别为左上角右上角的坐标
颜色函数
上面画圆的程序已经出现了两个颜色函数,除那两个外还有许多颜色函数:
setlinecolor(c); //设置线条颜色
setfillcolor(c); //设置填充颜色
setbkcolor(c); //设置背景颜色
setcolor(c); //设置前景颜色
常用的颜色常量有BLACK,WHITE,BLUE,GREEN,RED,BROWN,YELLOW等,也可以通过RGB三原色的值进行更多的颜色设定,形式为RGB(r,g,b)。
其中r、g、b分别表示红色、绿色、蓝色,范围都是0~255,例如RGB(255,255,255)表示白色,RGB(255,0,0)表示纯红色。
画两条红色浓度为200的直线可以写为:
setlinecolor(RGB(200, 0, 0));
line(0, 100, 640, 100);
line(0, 150, 640, 150);
利用循环语句画十条平行横线:
#include<graphics.h>
#include<conio.h>
int main()
{
initgraph(640, 480);
for (int y = 0; y <= 480; y += 48)
line(0, y, 640, 480);
getch();
closegraph();
return 0;
}
也可以将其更改为渐变颜色:
#include<graphics.h>
#include<conio.h>
int main()
{
initgraph(640, 480);
for (int y = 0; y <= 480; y += 48)
{
setcolor(RGB(0, 0, y));
line(0, y, 640, 480);
}
getch();
closegraph();
return 0;
}
下期更新数据结构!