2024年5月4日发(作者:)

第二章 VC6.0简单绘图说明

许多学编程的都是从 C 语言开始入门的,而目前的现状是:有些学校以 Turbo C 为环

境讲 C 语言,只是 Turbo C 的环境实在太老了,复制粘贴都很不方便。

有些学校直接拿 VC 来讲 C 语言,因为 VC 的编辑和调试环境都很优秀,并且 VC 有

适合教学的免费版本。可惜在 VC 下只能做一些文字性的练习题,想画条直线画个圆都很

难,还要注册窗口类、建消息循环等等,初学者会受严重打击的。初学编程想要绘图就得用

TC,很是无奈。 还有计算机图形学,这门课程的重点是绘图算法,而不是 Windows 编程。

所以,许多老师不得不用 TC 教学,因为 Windows 绘图太复杂了,会偏离教学的重点。新

的图形学的书有不少是用的 OpenGL,可是门槛依然很高。

要给初学者一个简单的学习平台,就要VC的开发平台和TC的简单的绘图功能,于是

就有了这个 EasyX 库,我们需要在VC下下载安装EasyX库,下载地址:http:///。

下面是VC下简单绘图函数的基本说明。

1. 系统支持

操作系统版本:Windows 2000 及以上系统。

编译环境版本:Visual C++ 6.0 / 2008(x86 & x64) / 2010(x86 & x64)。

2. 安装

请先将下载的压缩包解压缩,然后执行 ,并跟随提示安装。

安装程序会检测已经安装的 VC 版本,并根据选择将对应的 .h 和 .lib 文件安装至 VC

的 include 和 lib 文件夹内。安装程序不会修改注册表或者本机的任何文件。

如果需要手动安装,请根据下面的文件列表说明将安装包里的相关文件分别复制到 VC

对应的 include 和 lib 文件夹内,或者将 include 和 lib 文件夹放到任意位置,然后修改 VC

中的 Lib 和 Include 的引用路径。

3. 卸载

由于安装程序并不改写注册表,因此在“添加删除程序”中不会看到 EasyX 的卸载项。

如需卸载,请执行相应版本的 ,并根据提示卸载

4. 文件列表说明

下载的压缩包里文件列表及对应说明如下:

压缩包

├ include <文件夹>

│ └ graphics.h /* 程序需要引用的头文件*/

├ lib <文件夹>

│ ├ amd64 <文件夹>

│ │ ├ /* VC2008 / VC2010 MBCS 库文件(x64) */

│ │ └ /* VC2008 / VC2010 Unicode 库文件(x64) */

│ ├ /* VC6 MBCS 库文件*/

│ ├ /* VC6 Unicode 库文件*/

│ ├ /* VC2008 / VC2010 MBCS 库文件(x86) */

│ └ /* VC2008 / VC2010 Unicode 库文件(x86) */

├ EasyX_ /* 帮助文件*/

└ /* 安装程序项目依赖*/

使用上,基本和 Turbo C 没太大区别。启动 Visual C++,创建一个控制台项目(Win32

Console Application),然后添加一个新的代码文件(.cpp),并引用 graphics.h 头文件就可以了。

来看一个简单例子:

【例2-1】画一个圆。

#include /* 就是需要引用这个图形库*/

#include

void main()

{

initgraph(640, 480); /* 这里和 TC 略有区别*/

circle(200, 200, 100); /* 画圆,圆心(200, 200),半径 100*/

getch(); /* 按任意键继续*/

closegraph(); /* 关闭图形界面*/

}

TC绘图有不少区别的,比如颜色上,TC 只有 16 色,而这个库支持了真彩色。还有,

这个库增加了鼠标、批量绘图、读取图片(点阵或矢量)等功能。

2.1几个基本概念

1. 颜色

EasyX 使用 24bit 真彩色,不再支持调色板模式。表示颜色有以下几种办法:

1) 用预定义颜色常量,如下表所示:

常量

BLACK

BLUE

GREEN

CYAN

RED

0

颜色

常量

DARKGRAY

LIGHTBLUE

LIGHTGREEN

LIGHTCYAN

LIGHTRED

值 颜色

0x545454

深灰

0xFC5454

亮蓝

0x54FC54

亮绿

0xFCFC54

亮青

0x5454FC

亮红

0xA80000

0x00A800

绿

0xA8A800

0x0000A8

MAGENTA 0xA800A8

BROWN 0x0054A8

LIGHTMAGENTA 0xFC54FC

亮紫

YELLOW 0x54FCFC

0xFCFCFC

LIGHTGRAY 0xA8A8A8

浅灰

WHITE

表 2-1预定义颜色常量

2) 用 16 进制的颜色表示,形式为:

0xbbggrr (bb=蓝,gg=绿,rr=红)

3) 用 RGB 宏合成颜色。详见 RGB。

4) 用 HSLtoRGB、HSVtoRGB 转换其它色彩模型到 RGB 颜色。详见 HSLtoRGB、