Window10中Dev-C++ 使用EasyX绘图库编程入门

EasyX是针对C++的图形库,可以帮助C/C++初学者快速上手图形和游戏编程。主要支持支持 VC6.0 ~ VC2022,若想在Dev-C++中使用EasyX,如何做呢?

打开官网这个链接EasyX 2022 版 (2022-6-10 更新) - EasyX

目前若想在Dev-C++中使用EasyX,请单击红箭头标识的行的链接,可以看到官方可在 Dev-C++ 或 Code::Blocks 下使用 EasyX版本的下载配置说明,参见下图:

库文件下载后,解压可见包含的文件如下图示意:

其中的文件easyx.h 、 graphics.h、lib32中的libeasyx.a、lib64中的libeasyx.a,后面将要用到。

我的Dev-C++是64位5.11版的,Dev-Cpp 的安装路径为,我这里是D:\Program Files (x86)\Dev-Cpp

首先需要知道Dev-C++安装路径,假如你不记得或不知道Dev-C++安装路径,可以按如下办法获知:

打开Dev-C++,点击菜单 Tools -> Compiler Options ,在 Directories选项卡中可见

1.安装库文件库文件

现在将前面提到文件easyx.h 、 graphics.h、lib32中的libeasyx.a、lib64中的libeasyx.a拷贝到合适路径中。

对Window10中Dev-C++ 5.11版而言

将easyx.h 和 graphics.h 拷贝到 安装路径\MinGW64\x86_64-w64-mingw32\include      ,因此我这里拷贝到D:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\include

将lib32中的libeasyx.a拷贝到 安装路径\MinGW64\x86_64-w64-mingw32\lib32       ,因此我这里拷贝到D:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\lib32

将lib64中的libeasyx.a拷贝到 安装路径\MinGW64\x86_64-w64-mingw32\lib,因此我这里拷贝到D:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\lib32

2.设置编译时的链接选项

1) 创建新项目:菜单 File -> New -> Project...,选择 Console Application,项目名称 如TestProject(根据自己的情况填写),语言选择 C++,点 OK,参见下图:

单击“OK”按钮,出现如下对话框

将 TestProject.dev 保存到 D:\ TestEasyX(根据自己的情况填写)单击“保存”按钮完成。

2) 编写基本测试代码,代码如下:

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

int main()
{
	initgraph(640, 480);
	circle(320, 240, 100);
	getch();
	closegraph();
	return 0;
}

3) 设置链接库:菜单 Project -> Project Options...,选择选项卡 Parameters,然后在 Linker 区域点按钮 Add library or object 逐个添加:libeasyx.a、libgdi32.a、libole32.a,或者也可以直接在 Link 里面输入 -leasyx -lgdi32 -lole32,完成。

4) 点工具栏按钮 Compile & run 或按 F11 编译执行,可以看到屏幕画出一个圆。

至此成功!

3.生成项目模版,简化操作步骤

每次写新项目都要设置链接库,有点麻烦。可以通过生成项目模版简化该过程:

菜单 File -> New -> Project Template...,填写模版名称,如:EasyX Application,其他选项可以根据自己喜好填写,完成。

下次再创建项目时,可以直接选择模版名称,然后填写项目名称、选择路径,直接开始编写 EasyX 绘图程序,不用再设置链接库。

当然,也可以不用模版,像前面那样的步骤那样从创建新项目开始。

下面给出一个简单的示例,实现在蓝色背景下绘制红色的矩形,为此先简要介绍一个概念:

EasyX设备

EasyX设备坐标默认的原点在窗口的左上角,X轴向右为正,Y 轴向下为正,度量单位是像素点。

设备:简单来说,就是绘图表面。

示例源码如下:

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

int main()
{
	// 初始化绘图窗口
	initgraph(640, 480);

	// 设置背景色为蓝色
	setbkcolor(BLUE);
	// 用背景色清空屏幕
	cleardevice();

	// 设置绘图色为红色
	setcolor(RED);
	// 画矩形
	rectangle(100, 100, 300, 300);

	// 按任意键退出
	_getch();
	closegraph();
    
    return 0;
}

在线文档EasyX 文档 - 基本说明

EasyX 作品库 CodeBus - 分享有趣的 C/C++ 代码

EasyX基础入门 EasyX基础入门——这一篇就够啦_绿駬的博客-CSDN博客_easyx

附录、同类库:

★ EGE(Easy Graphics Engine)由国人开发的windows平台下的bgi兼容库,和easyx在功能上相当。最大的优点是开源。官网Easy Graphics Engine – EGE图形库主站

Dev-C++ 使用EGE绘图库编程入门https://blog.csdn.net/cnds123/article/details/109982100

★ raylib是一个以简单易用为目标的跨平台游戏绘图库,全平台支持(包括Linux、android、web),除了2d外,也支持3d(基于OpenGL)动画和游戏开发。缺点是中文文档很少。

raylib绘图库简介raylib绘图库简介 - 知乎

特别说明

Dev-C++ 是Windows环境下的轻量级C/C++ 集成开发环境,自由开源。Dev-C++ download | SourceForge.net

上次更新时间为2015年4月到Dev C++5.11。已停止维护了,并且不直接支持EGE、raylib和EasyX这些图形函数库。

现在出现了一些​(目前依然在稳定运行的)分支版本,国内主要有:

小龙Dev-C++  小龙 Dev-C++ 中文主页

小龙Dev-C++集成了图形函数库 EGE、EasyXraylib,省去了用户手工配置的麻烦。

小熊猫Dev-C++ 网址 小熊猫C++

小熊猫C++在自带gcc中整合了ege、海龟作图、raylib、freeglut、GLFW和GLEW等适合编程或者游戏开发入门者使用的库和项目模板,无需复杂的安装配置即可直接使用。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐