VC-easyx绘图游戏简易教程要点 下载本文

内容发布更新时间 : 2024/9/20 4:13:35星期一 下面是文章的全部内容请认真阅读。

1:创建新项目

自己动手建立项目试试,并输入以下代码: #include void main()

{ printf(\}

然后,输入以下代码试试(无需理解代码含义):

#include #include void main() {

initgraph(640, 480);

line(200, 240, 440, 240); line(320, 120, 320, 360); getch();

closegraph(); }

执行后应该可以看到屏幕正中央有一个十字

2:简单绘图,学习单步执行

#include // 绘图库头文件,绘图语句需要

#include // 控制台输入输出头文件,getch()语句需要 void main() {

initgraph(640, 480); // 初始化640x480的绘图屏幕 line(200, 240, 440, 240); // 画线(200,240) - (440,240) line(320, 120, 320, 360); // 画线(320,120) - (320,360) getch(); // 按任意键

closegraph(); // 关闭绘图屏幕 }

解释一下:

1. 创建的绘图屏幕640x480,表示横向有640个点,纵向有480个点。注意:左上角是原点(0,0),也就是说,y轴和数学的y轴是相反的。 2. getch实现按任意键功能,按任意键后,程序继续执行。否则,程序会立刻执行closegraph以至于看不到绘制的内容。

[作业]

用线条画出更多的图形,要求不少于10条直线。

[学习单步执行]

完成作业后(务必完成),开始试着单步执行刚才的程序,由于绘图和多线程等因素的限制,请务必按照以下步骤尝试(熟练了以后就不用了): 1. 将VC取消最大化,并缩小窗口,能看到代码就行。 2. 按一下F10(单步执行),会看到屏幕上出现一个黄色的小箭头,指示将要执行的代码。 3. 当箭头指向initgraph语句时,按F10,能看到窗口发生了变化。

4. 将新的绘图窗口和VC并排放,相互不要有覆盖。这步很重要,否则绘图内容将会被VC窗口覆盖。

5. F10执行getch后,记得激活绘图窗口,并按任意键,否则程序不会继续执行。 6. closegraph后,直接按F5执行全部剩余程序,结束。

单步执行很重要,可以让你知道程序执行到哪里是什么效果,哪条语句执行出了问题等等。

3:熟悉更多的绘图语句

[常用的绘图语句]

line(x1, y1, x2, y2); // 画直线 (x1,y1)-(x2,y2),都是整形 circle(x, y, r); // 画圆,圆心为(x,y),半径为r putpixel(x, y, c); // 画点(x,y),颜色c

还有很多,如画椭圆、圆弧、矩形、多边形,等等,请参考绘图帮助文件(目录页的绘图库的下载里面有)

[设置颜色]

setcolor(c); // 设置绘图颜色,如setcolor(RED)设置为红色等 常用的颜色常量可以用:

BLACK 黑 DARKGRAY 深灰 BLUE 蓝 LIGHTBLUE 亮蓝 GREEN 绿 LIGHTGREEN 亮绿 CYAN 青 LIGHTCYAN 亮青 RED 红 LIGHTRED 亮红

MAGENTA 紫 LIGHTMAGENTA 亮紫 BROWN 棕 YELLOW 黄 LIGHTGRAY 浅灰 WHITE 白

[配出更多的颜色]

颜色除了前面写的16种以外,还可以自由配色。格式: RGB(r, g, b)

r / g / b 分别表示红色、绿色、蓝色,范围都是0~255。 例如,RGB(255,0,0) 表示纯红色。

红色和绿色配成黄色,因此 RGB(255,255,0) 表示黄色。

嫌调色麻烦可以用画笔里面的调色试试,调好了以后直接将数值抄过来就行。

例如,画两条红色浓度为200的直线,可以写: setcolor(RGB(200,0,0)); line(100,100, 200,100); line(100,120, 200,120);

[用数字表示颜色]

除了用RGB(r,g,b)方式外,还可以用16进制表示颜色,格式: 0xrrggbb

例如,setcolor(0xff0000) 和 setcolor(RGB(255,0,0)) 是等效的。

[延时语句]

这个很简单 Sleep(n) 就可以表示 n 毫秒的延时。例如延时3秒,可以用 Sleep(3000);

[作业]

1. 简单看一下绘图库的帮助文件,了解更多的绘图语句。 2. 绘制更丰富的图形内容,不低于20行。

3. 将延时语句适当的插入上个作业的代码中,看看执行效果。

注:绘图语句不需要记住,用的时候翻翻手册就行。

-4:结合流程控制语句来绘图

[范例]

例如,画10条直线的代码: #include #include void main() {

initgraph(640, 480);

for(int y=100; y<200; y+=10) line(100, y, 300, y); getch();

closegraph(); }

换一下循环的范围和间隔,看看效果。

还可以用来画渐变色,例如: #include