网站建设资讯

NEWS

网站建设资讯

C语言easyx图形库相关常用函数介绍(非常详细)-创新互联

前言:easyx图形库是C++里面的一个图形库,其装有一些基本的绘图函数,可以通过这些绘图函数来创建一个窗口,从而绘制你想要的图像。这个非常适合初学者使用,能够帮助初学者快速上手图形库,同时我们还可以通过easyx图形库来制作有趣的图片,或者制作游戏。 

创新互联公司致力于互联网品牌建设与网络营销,包括成都网站制作、成都网站设计、SEO优化、网络推广、整站优化营销策划推广、电子商务、移动互联网营销等。创新互联公司为不同类型的客户提供良好的互联网应用定制及解决方案,创新互联公司核心团队十多年专注互联网开发,积累了丰富的网站经验,为广大企业客户提供一站式企业网站建设服务,在网站建设行业内树立了良好口碑。

这个是我个人通过easyx图形库制作的流星雨动态图

流星雨

首先下载easyx图形库到你的VS 编译器里

C语言图形库函数easyx下载

easyx下载
也可以复制EasyX Graphics Library for C++浏览器下载

头文件
#include//或者#include
1.创建窗口函数
initgraph(900, 600,SHOWCONSOLE);//其中900表示长,600表示高
//其中的SHOWCONSOLE是展示控制台,可以用1来代替,即initgraph(900, 600,1);
//这个参数可以不用

2.设置窗口背景颜色
setbkcolor(RGB(66, 52, 200));//RGB(a,b,c)其中a是表示红色,b是表示绿色,c是表示蓝色
setbkcolor(GREEN);//我们也可以这样直接表示窗口背景为绿色

RGB三原色每个参数的取值范围是0~255.不同的参数混合起来会展现出不同的颜色。

RGB

3.清屏函数
cleardevice();//清除当前画图窗口

4.打印文字
settextstyle(x, y, "幼圆");//表示字体的风格
//x是表示单个字体的高度;y是表示字体的平均宽度,一般设为0为默认值
settextcolor(BLUE);
//settextcolor(RGB(40,50,100));

(表示设立字体的颜色,有以上的两种写法 )

outtextxy(X,Y , "我爱中国!");
//我们也可以这样子输出
char str[20]={"我爱中国!"};
outtextxy(50,50,str);

其中X表示字体所放的横坐标,Y表示纵坐标(原点是在窗口的左上角)

5.画线段
setlinecolor(GREEN);//表示设立线段的颜色
//同样可以这样写setlinecolor(RGB(50,40,150));

一般先设立好线段的颜色,再去画线段

line(x1,y1,x2,y2);//绘画线段

数学上两点确定一条直线,起点坐标(x1,y1),终点坐标(x2,y2),连接起来就表示一条线段.

6.画圆
fillcircle(x,y,r);//表示画一个满圆,即实心圆

x表示圆心的横坐标,y表示圆心的纵坐标,r表示半径的大小

circle(x,y,r)//表示画一个空心圆,只有圆的轮廓,中间是空的

7.画矩形
rectangle(x1,y1,x2,y2)//表示画一个空心矩形(只有矩形的边框)

其中(x1,y1)表示矩形左下角点的坐标,(x2,y2)表示矩形右上角点的坐标,两个点是表示对角线,连起来画出矩形

fillrectangle(x1,y1,x2,y2);//表示画一个实心的矩形

8.设立填充颜色函数
setfillcolor(YELLOW);//当前颜色为黄色,颜色也可以用RGB来表示

填充颜色一般放在实心图的前面,例如:

setfillcolor(YELLOW);//颜色
fillrectangle(x1,y1,x2,y2);//实心图

9.画点
putpixel(x,y,color);//x表示点的横坐标,y表示点的纵坐标,color是颜色

在图形库里,一个点即是一个像素点,我们可以利用循环来画出多个点来从而绘画出图形,例如:

for (int x = 0; x< 100; x++)
{
	for (int y = 0; y< 100; y++)
	{
		putpixel(x, y, BLUE);
	}
}//画出的结果是一个边长为100的正方形
10.画弧
arc(x1,y1,x2,y2, stangle, endangle);//画出一个弧线

参数: 坐标(x1,y1),(x2,y2)表示一个矩形左下角、右上角坐标.内框一个内切椭球形

  stangle表示弧的起始角度(为浮点数,弧度制)

  endangle表示弧的末尾角度(为浮点数,弧度制)

  画弧原则是,逆时针画弧

11.双缓冲(防止屏幕的跳动)
BeginBatchDraw();//
EndBatchDraw();//
12.贴图(放出图片)
IMAGE kk;//设立一个图片,命名为kk
	loadimage(&kk,"img.jpg",x,y);//取地址,加载这个图片,同时设其长为x,高y(可以自行设立)
	putimage(X, Y, &kk);//放出改图片,图片左上角的的坐标为(X,Y)

要点须知:要想放出图片,前提要找到图片的完整路径。或者可以把图片的文件放到编译文件的同一个目录上.

13.鼠标操作
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;// 右键按下消息
}

一般我们结合switch语句来执行相关的操作

14.获取一个点的颜色
COLORREF getpixel(x,y);//x表示该点的横坐标,y表示纵坐标

返回值是一个像素点的RGB的值。

15.关闭绘图窗口
closegraph();//放在末尾
目前就先讲这么多吧,其实easyx图形库里面还有很多很多函数。我们可以结合相关知识(循环,结构体,链表等等)去画出图形,做游戏。

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


本文标题:C语言easyx图形库相关常用函数介绍(非常详细)-创新互联
URL链接:http://njwzjz.com/article/djesss.html