EasyX简单绘图快速入门

众所周知EasyX是一款在C++环境上运行的图形交互库,如果你觉得C\C++好无聊,你可以玩玩这个,官网也有下载链接,我这里有15年的版本,但是无法发链接,如果想要的可以在评论区留言或者私信我在这里插入图片描述

在DevC++软件无法配置easyX库,我是在Microsoft Visual C++下运行的,把easyx.h等文件配置好后,就可以开始写第一个了

样例一、画一个圆(谁说只有python可以啊,咱们C++也可以)

#include<graphics.h>
#include<conio.h>

int main()
{

	initgraph(666, 666);		//初始化为666*666的画布
/*				circle				*/
 	setcolor(YELLOW);			//circle的线条为黄色
 	setfillcolor(RED);			//circle内红色填充
 	setbkcolor(GREEN);
 	fillcircle(300, 300, 60);	//circle center为(100,100)半径20


/*				line				*/
//	setlinecolor(RGB(200, 0, 0));
//	line(0, 100, 640, 100);
//	line(0, 150, 640, 150);


/*				九根平行线				*/
//	setlinecolor(RGB(200, 0, 0));
//	for(int y = 0; y <= 480; y += 60)		
//	{
//		line(0, y, 640, y);
//	}


/*				渐变颜色				*/
//	for(int y = 0; y < 256; y++)
//	{
//		setcolor(RGB(0, 0, y));
//		line(0, y, 640, y);
//	}

//	for(int y = 0; y <= 200; y += 5)
//	{
//		if(y / 5 % 2 == 1)
//			setcolor(RGB(255, 0, 0));
//		else
//			setcolor(RGB(0, 0, 255));
//		line(0, y, 640, y);
//	}
	getch();					//按任意键继续
	closegraph();				//关闭图形界面
	return 0;
} 

运行效果如下:
在这里插入图片描述

样例二、画两条线

#include<graphics.h>
#include<conio.h>

int main()
{

	initgraph(666, 666);		//初始化为666*666的画布
/*				circle				*/
// 	setcolor(YELLOW);			//circle的线条为黄色
// 	setfillcolor(RED);			//circle内红色填充
// 	setbkcolor(GREEN);
// 	fillcircle(300, 300, 60);	//circle center为(100,100)半径20


/*				line				*/
 	setlinecolor(RGB(200, 0, 0));
 	line(0, 100, 640, 100);
 	line(0, 150, 640, 150);


/*				九根平行线				*/
//	setlinecolor(RGB(200, 0, 0));
//	for(int y = 0; y <= 480; y += 60)		
//	{
//		line(0, y, 640, y);
//	}


/*				渐变颜色				*/
//	for(int y = 0; y < 256; y++)
//	{
//		setcolor(RGB(0, 0, y));
//		line(0, y, 640, y);
//	}

//	for(int y = 0; y <= 200; y += 5)
//	{
//		if(y / 5 % 2 == 1)
//			setcolor(RGB(255, 0, 0));
//		else
//			setcolor(RGB(0, 0, 255));
//		line(0, y, 640, y);
//	}
	getch();					//按任意键继续
	closegraph();				//关闭图形界面
	return 0;
} 

效果如下:
在这里插入图片描述

按这个套路,依次把我下面注释的代码运行就会有

样例三、九条平行线

在这里插入图片描述

样例四、渐变颜色

在这里插入图片描述

变式1:全屏渐变色

#include<graphics.h>
#include<conio.h>
void main()
{
	initgraph(640, 480);
	int c;
	for(int y = 0; y < 480; y++)
	{
		c = y * 255 / 479;		//先算乘法再算除法可以提高精度
		setcolor(RGB(0, 0, c));
		line(0, y, 639, y);
	}
	getch();
	closegraph();
}

在这里插入图片描述

变式2:渐变圆

#include<graphics.h>
#include<conio.h>
#include<math.h>

#define PI 3.14

void main()
{
	initgraph(640, 480);
	int c;
	double a;
	int x, y, r = 200;
	for(a = 0; a < PI * 2; a += 0.0001)
	{
		x=(int)(r * cos(a) + 320 + 0.5);
		y=(int)(r * sin(a) + 240 + 0.5);
		c=(int)(a * 255 / (2 * PI) + 0.5);
		setcolor(RGB(0, 255, c));
		line(320, 240, x, y);
	}
	getch();
	closegraph();
}

在这里插入图片描述

注: + 0.5是为了四舍五入更加接近

样例五、流行的土味男装颜色样式

在这里插入图片描述

也就是说学好编程你也可以称为服装style设计师,哈哈哈哈

常用的绘图语句

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

在这里插入图片描述
在这里插入图片描述

样例六、标准围棋棋盘19 * 19

#include<graphics.h>
#include<conio.h>
int main()
{
	int step = 30;
	initgraph(600, 600);
	setbkcolor(YELLOW);				//背景色黄色
	cleardevice();					//用背景色清空屏幕

	setlinestyle(PS_SOLID, 2);		//画实线,宽度为两像素
	setcolor(RGB(0, 0, 0));			//设为黑色

	int i;
	for(i = 1; i <= 19; i++)
	{
		line(i * step, 1 * step, i * step, 19 * step);
		line(1 * step, i * step, 19 * step, i * step);
	}
	getch();
	closegraph();
	return 0;
}

效果如下:
在这里插入图片描述
关于五子棋游戏如何实现,请关注我的频道,下次我会写一篇关于这个的博文

样例七、国际象棋棋盘

#include<graphics.h>
#include<conio.h>

int main()
{
	int step = 50;
	initgraph(500, 500);
	setbkcolor(YELLOW);
	cleardevice();

	int i, j;
	for(i = 1; i <= 8; i++)
	{
		for(j = 1; j <= 8; j++)
		{
			if((i + j) % 2 == 1)
			{
				setfillcolor(BLACK);
				solidrectangle(i * step, j * step, (i + 1) * step, (j + 1) * step);
			}
			else
			{
				setfillcolor(WHITE);
				solidrectangle(i * step, j * step, (i + 1) * step, (j + 1) * step);
			}
		}
	}
	getch();
	closegraph();
	return 0;
}

效果如下:
在这里插入图片描述

是不是感觉easyX很容易上手,之后我会更新图形游戏的

如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持,持续更新中!!!

  • 27
    点赞
  • 89
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
还是选用多特官方介绍,方便和我一样的初学者: 许多学编程的都是从 C 语言开始入门的,而目前的现状是: 1. 有些学校以 Turbo C 为环境讲 C 语言,只是 Turbo C 的环境实在太老了,复制粘贴都很不方便。 2. 有些学校直接拿 VC 来讲 C 语言,因为 VC 的编辑和调试环境都很优秀,并且 VC 有适合教学的免费版本。可惜在 VC 下只能做一些文字性的练习题,想画条直线画个圆都很难,还要注册窗口类、建消息循环等等,初学者会受严重打击的。初学编程想要绘图就得用 TC,很是无奈。 3. 还有计算机图形学,这门课程的重点是绘图算法,而不是 Windows 编程。所以,许多老师不得不用 TC 教学,因为 Windows 绘图太复杂了,会偏离教学的重点。新的图形学的书有不少是用的 OpenGL,可是门槛依然很高。 所以,我想给大家一个更好的学习平台,就是 VC 方便的开发平台和 TC 简单绘图功能,于是就有了这个 EasyX 库。如果您刚开始学 C 语言,或者您是一位教 C 语言的老师,再或者您在教计算机图形学,那么这个库一定会让您兴奋的。 安装 绘图库支持 Visual C++ 6.0 / 2008 / 2010。下载的压缩包解压缩后,执行 Setup.hta 即可。 手动安装详见帮助。 使用说明 目前模拟了几乎所有的 BGI 的绘图函数。使用上,基本和 TC / BC 没太大区别。看一个画圆的例子吧: #include // 就是需要引用这个图形库 #include void main() { initgraph(640, 480); // 这里和 TC 略有区别 circle(200, 200, 100); // 画圆,圆心(200, 200),半径 100 getch(); // 按任意键继续 closegraph(); // 关闭图形界面 } 呵呵,很简单吧。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值