EasyX简单实用的操作教程

本文介绍了如何使用图形库在C语言中静态绘制线、方、圆,并实现颜色填充、基本颜色设置和动态效果,如海上日出的演示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

静态绘制:

        1、绘制 线,方,圆。

        2、颜色填充。

        3、基本颜色设置。

        4、设置动态效果

1、绘制 线,方,圆。

(1)画一条线

#include<graphics.h>//调用图形库头文件
#include<conio.h>

int main()
{
	int x1, y1, x2, y2;//定义线的两边端点坐标
	x1 = 200;//端点坐标赋值
	y1 = 300;
	x2 = 400;
	y2 = 300;
	initgraph(600, 600);//初始化一个600*600大小的画布窗口
	line(x1, y1, x2, y2);//在屏幕中间画一条线
	_getch();//暂停,等待键盘输入
	closegraph();//关闭画布窗口
	return 0;
}

 (2)设置线宽 

#include<graphics.h>//调用图形库头文件
#include<conio.h>

int main()
{
	int x1, y1, x2, y2,n;//定义线的两边端点坐标和代表线宽的参数
	x1 = 200;//端点坐标赋值
	y1 = 300;
	x2 = 400;
	y2 = 300;
	n = 10;//设置线宽为10
	initgraph(600, 600);//初始化一个600*600大小的画布窗口
	setlinestyle(PS_SOLID, n);//设置线宽
	line(x1, y1, x2, y2);//在屏幕中间画一条线
	_getch();//暂停,等待键盘输入
	closegraph();//关闭画布窗口
	return 0;
}

 

 

(2)画一个方形

#include<graphics.h>//调用图形库头文件
#include<conio.h>

int main()
{
	int x1, y1, x2, y2;//定义矩形的左上角和右下角顶点坐标
	x1 = 200;//端点坐标赋值
	y1 = 200;
	x2 = 400;
	y2 = 400;
	initgraph(600, 600);//初始化一个600*600大小的画布窗口
	rectangle(x1, y1, x2, y2);//在屏幕中间画一个正方形
	_getch();//暂停,等待键盘输入
	closegraph();//关闭画布窗口
	return 0;
}

(3)画一个圆

 

#include<graphics.h>//调用图形库头文件
#include<conio.h>

int main()
{
	int x, y, r;//定义圆心坐标和半径
	x = 300;
	y = 300;
	r = 100;
	initgraph(600, 600);//初始化一个600*600大小的画布窗口
	circle(x, y, r);//在屏幕中间画一个圆形
	_getch();//暂停,等待键盘输入
	closegraph();//关闭画布窗口
	return 0;
}

  2、颜色填充。

#include<graphics.h>//调用图形库头文件
#include<conio.h>

int main()
{
	int x, y, r;//定义圆心坐标和半径
	x = 300;
	y = 300;
	r = 100;
	initgraph(600, 600);//初始化一个600*600大小的画布窗口
	fillcircle(x, y, r);//在屏幕中间画一个实心圆
	_getch();//暂停,等待键盘输入
	closegraph();//关闭画布窗口
	return 0;
}

3、图形颜色设置

 

#include<graphics.h>//调用图形库头文件
#include<conio.h>

int main()
{
	int cir_x, cir_y, r;//定义圆的变量
	cir_x = 300;
	cir_y = 400;
	r = 100;

	int rec_x1, rec_y1, rec_x2, rec_y2;//定义矩形变量
	rec_x1 = 0;
	rec_y1 = 400;
	rec_x2 = 600;
	rec_y2 = 600;
	
	initgraph(600, 600);//初始化一个600*600大小的画布窗口
	setbkcolor(WHITE);//设置背景颜色白色,此函数一定要放在创建画布的后面
	cleardevice();//用背景颜色清空屏幕
	setlinecolor(YELLOW);//设置圆的边框为黄色
	setfillcolor(YELLOW);//设置圆的填充颜色为黄色
	fillcircle(cir_x, cir_y, r+50);//绘制圆形
	setlinecolor(RED);//设置圆的边框为黄色
	setfillcolor(RED);//设置圆的填充颜色为黄色
	fillcircle(cir_x, cir_y, r);//绘制圆形

	setlinecolor(BLUE);//设置大海的边框为蓝色
	setfillcolor(BLUE);//设置大海的填充颜色为蓝色
	fillrectangle(rec_x1, rec_y1, rec_x2, rec_y2);//绘制大海

	_getch();//暂停,等待键盘输入
	closegraph();//关闭画布窗口
	return 0;
}

 

4、图像动态设置——海上日出

#include<graphics.h>//调用图形库头文件
#include<conio.h>

int main()
{
	int cir_x, cir_y, r1,r2;//定义圆的变量
	cir_x = 300;
	cir_y = 450;
	r1 = 100;
	r2 = r1 + 50;

	int rec_x1, rec_y1, rec_x2, rec_y2;//定义矩形变量
	rec_x1 = 0;
	rec_y1 = 400;
	rec_x2 = 600;
	rec_y2 = 600;
	
	int line_x1 = 280;//设置光线变量
	int line_x2 = 320;
	int stemp = 20;
	int line_y = 410;

	initgraph(600, 600);//初始化一个600*600大小的画布窗口
	setbkcolor(WHITE);//设置背景颜色白色,此函数一定要放在创建画布的后面
	cleardevice();//用背景颜色清空屏幕

	setlinecolor(BLUE);//设置大海的边框为蓝色
	setfillcolor(BLUE);//设置大海的填充颜色为蓝色
	fillrectangle(rec_x1, rec_y1, rec_x2, rec_y2);//绘制大海
	BeginBatchDraw();//开始批量绘制
	while (cir_y > 200)
	{
		cir_y -= 10;
		r1 += 3;
		r2 += 20;//外光半径扩大

		line_x1 -= stemp;
		line_x2 += stemp;
		line_y += 30;
		
		setlinecolor(YELLOW);//设置圆的边框为黄色
		setfillcolor(YELLOW);//设置圆的填充颜色为黄色
		fillcircle(cir_x, cir_y, r2);//绘制圆形
		setlinecolor(RED);//设置圆的边框为黄色
		setfillcolor(RED);//设置圆的填充颜色为黄色
		fillcircle(cir_x, cir_y, r1);//绘制圆形
		setlinecolor(BLUE);//设置大海的边框为蓝色
		setfillcolor(BLUE);//设置大海的填充颜色为蓝色
		fillrectangle(rec_x1, rec_y1, rec_x2, rec_y2);//绘制大海

	//每次太阳升高海面都有波光闪动,下面设置了一次闪动六条波光
		setlinestyle(PS_SOLID, 10);//设置线宽
		setlinecolor(YELLOW);//设置
		line(line_x1 - 20, line_y - 50, line_x2 + 20, line_y - 50);
		setlinestyle(PS_SOLID, 10);//设置线宽
		setlinecolor(RED);//设置
		line(line_x1, line_y, line_x2, line_y);
		setlinestyle(PS_SOLID, 10);//设置线宽
		setlinecolor(YELLOW);//设置
		line(line_x1 - 20, line_y + 20, line_x2 + 20, line_y + 20);
		setlinestyle(PS_SOLID, 10);//设置线宽
		setlinecolor(RED);//设置
		line(line_x1 - 20, line_y - 10, line_x2 + 20, line_y - 10);
		setlinestyle(PS_SOLID, 10);//设置线宽
		setlinecolor(RED);//设置
		line(line_x1, line_y + 80, line_x2, line_y + 80);
		setlinestyle(PS_SOLID, 10);//设置线宽
		setlinecolor(YELLOW);//设置
		line(line_x1 - 20, line_y + 60, line_x2 + 20, line_y + 60);
		FlushBatchDraw();//进行批量绘制
		Sleep(1000);
	}

	//最后呈现出波光
	line_x1 = 280;
	line_x2 = 320;
	stemp = 20;
	line_y = 430;
	while (line_y < 600)
	{
		line_x1 -= stemp;
		line_x2 += stemp;
		line_y += 10;
		setlinestyle(PS_SOLID, 50);//设置线宽
		setlinecolor(RED);//设置光线颜色
		line(line_x1, line_y, line_x2, line_y);
		Sleep(50);
		FlushBatchDraw();
	}
	
	_getch();//暂停,等待键盘输入
	closegraph();//关闭画布窗口
	return 0;
}

 

 

 

 

 

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

代码骑士

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值