C语⾔图形库——EasyX常⽤函数
上节讲到贴出⼀张图⽚的过程,本节接着介绍⼀些基本的图形库函数。
头⽂件
#include<graphics.h>
1、图形窗⼝背景颜⾊设置函数:
例
setbkcolor(YELLOW);//将图形窗⼝背景颜⾊设置为黄⾊。
也可⽤
setbkcolor(RGB(180,24,137));
利⽤三原⾊设置颜⾊,RGB(红,绿,蓝),每种颜⾊的取值范围为0—255,RGB(180,24,137)的意思就是说红:绿:蓝=180::24:137.
2、打印⽂字函数:
outtextx(x,y,L”hello”),
在坐标(x,y)处打印出hello,该函数只能打印字符串,打印数字需要强转类型,例如:
int a=1;
Char str[10];Sprintf(str,”%d”,a);outtextx(x,y,str);
3、设置⽂字风格函数:
settextstyle(h,w,L”楷体”);
将字体设置为⾼度为h、平均宽度为w以楷体样式输出,宽度w可设置为0即⽐例⾃适应
4、画线段函数:
line(x,y,xx,yy);//在图形窗⼝中将坐标为(x,y)、(xx,yy)的两点连接起来。
5、设置线段颜⾊函数:
setlinecolor(RED);//将线段设为红⾊
6、显⽰点函数:
putpixel(x,y,BLUE);//在图形窗⼝的(x,y)处显⽰⼀个颜⾊为蓝⾊的点。
7、画矩形函数:
rectangle(x,y,xx,yy);//矩形左上⾓坐标(x,y)、右下⾓坐标(xx,yy)为界显⽰⼀个矩形。
8、画圆函数:
fillcircle(x,y,r);//以圆⼼为(x,y)、半径为r画圆。
9、清屏函数:
cleardevice();//具体来说这个函数的功能是将当前图形窗⼝清空,还原⾄背景颜⾊。
10、⿏标操作:
这⾥我们只列举⼏个常⽤的
MOUSEMSG msg;//定义⼀个⿏标消息
msg=GetMouseMsg();//获取⿏标消息
switch(msg.uMsg)
{
case WM_MOUSEMOVE: ……break;//⿏标移动消息
case WM_MOUSEWHEEL: ……break;// ⿏标滚轮拨动消息
case WM_LBUTTONDOWN: ……break;// 左键按下消息
case WM_MBUTTONDOWN: ……break;// 中键按下消息
case WM_RBUTTONDOWN: ……break;// 右键按下消息
}
11、双缓冲,⽤于缓解屏幕跳动
BeginBatchDraw();
EndBatchDraw();
12、pos_x,pos_y表图⽚显⽰的位置,photo_width,photo_high表图⽚的⼤⼩,&image图⽚的地址,photo_x,photo_y表从该处开始取图
putimage(pos_x,pos_y,photo_width,photo_high,&image,photo_x,photo_y);
13、获取图⽚image的长和宽
IMAGE iamge;
14、设置填充⾊
setfillcolor(RED);
15、计时(记秒数),需添加头⽂件
#include<time.h>
clock_t start=clock();
clock_t end=(clock()-start)/CLOCKS_PER_SEC;
16、画旋转线段
int line_long;//线段长度
float line_Alge;//每次转动的⾓度
int center_x,center_y,end_x,end_y;//线段的起点与终点
end_x=center_x+line_long*sin(line_Alge);
end_y=center_y+line_long*cos(line_Alge);
line(center_x,center_y,end_x,end_y);
17、随机函数
#include<time.h>
int num=rand()%100;//从0-99之间随机选取⼀个数
(在使⽤随机函数的开始出要⽤随机函数的种⼦,避免每次出现的随机数是⼀样的:srand((unsigned int)time(NULL));
这⾥在讲⼀个上节漏掉的函数:
c语言编程小游戏(1)创⽴图形窗⼝并保留控制台窗⼝:
initgraph(w,h, SHOWCONSOLE),w、h的意义不必多说。
(2)关闭图形窗⼝:
closegraph();
到这⾥如果这些函数都掌握了,⽤C语⾔做⼀些⼩游戏应该不成问题,⽐如推箱⼦、打地⿏、迷宫等等,当然你必须要有⼀定的逻辑能⼒,这些函数只是帮你完成游戏的画⾯。
接下来再说⼀些可能会⽤的函数:
获取屏幕宽:
GetSystemMetrics(SM_CXFULLSCREEN);//此函数返回当前电脑屏幕的宽`。
获取屏幕⾼:
GetSystemMetrics(SM_CYFULLSCREEN);//此函数返回当前电脑屏幕的⾼。
播放⾳乐
这个就不属于图形库的内容了,在做游戏的时候肯定不能少了配乐。
#include<mmsystem.h>//头⽂件
#pragma comment(lib,”winmm.lib”) //引⽤静态库
mciSendstring(“open ⾳乐⽂件名(加⽂件类型,例:.mp3) alias music”,NULL,NULL,NULL);//将⾳乐⽂件放在与源⽂件同⼀⽬录下,alias music的意思就是将这个⾳乐⽂件重新命名为music
mciSendstring(“play music repeat”,NULL,NULL,NULL);//播放⾳乐,play意为播放,同样可换做pause:暂停,stop:停⽌,close:关闭,Resume:继续。Repea t意为重复播放。
mciSendstring(“stop music repeat”,NULL,NULL,NULL);//暂停播放⾳乐。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论