好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

ege图形库基本说明.doc

8页
  • 卖家[上传人]:博****1
  • 文档编号:436925675
  • 上传时间:2022-12-19
  • 文档格式:DOC
  • 文档大小:57KB
  • / 8 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 本库是一个类似的BGI图形库,使用方法相当接近,所以学习过 TC图形的话会很容易上手基本使用方法几乎和TC的一样,只要#inelude ""就可以了本图形库目前支持 VC6, VC2008, VC2010等IDE,同时也支持Min GW编译器和使 用 MinGW编译器的 IDE (如 Code::Blocks , C-Free , Dev-CPR eclipse for C/C++) 在头文件的最顶处有相关的说明,并且附带较详细的 pdf 文档 •为什么要写这个库?许多学编程的都是从 C 语言开始入门的,而目前的现状是:1. 有些学校以 Turbo C 为环境讲 C 语言,只是 Turbo C 的环境实在太老了, 复制粘贴都很不方便2. 有些学校直接拿 VC 来讲 C 语言,因为 VC 的编辑和调试环境都很优秀, 并 且 VC 有适合教学的免费版本 可惜在 VC 下只能做一些文字性的练习题, 想画 条直线画个圆都很难, 还要注册窗口类、 建消息循环等等, 初学者会受严重打击 的初学编程想要绘图就得用 TC,很是无奈3. 还有计算机图形学, 这门课程的重点是绘图算法, 而不是 Windows 编程。

      所 以,许多老师不得不用 TC 教学,因为 Windows 绘图太复杂了,会偏离教学的 重点新的图形学的书有不少是用的 OpenGL可是门槛依然很高所以,我想给大家一个更好的学习平台, 就是 VC 方便的开发平台和 TC 简单的 绘图功能, 于是就有了这个库 如果您刚开始学 C 语言,或者您是一位教 C 语 言的老师,再或者您在教计算机图形学,那么这个库一定会让您兴奋的 另外:这个库不是为了给你直接移植 BGI 图形代码用的, 直接移植多半是不能通 过编译的如果真需要移植,请做相应的修改,或者使用高兼容性的ege老版本图形 库•本图形库的优点:★绘图效率较好,特别在批量绘图模式下, 640*480的半透明混合,可以直接使 用 getpixel / putpixel 完成,并且可以在大约CPU台式机器上达到60fps (要优化,否则一般的家用机再强 也不行)★灵活性更强,绘图可以直接针对一个 PIMAGE不必只能画在屏幕上 ★功能更多,支持拉伸贴图,支持透明半透明贴图,支持图像模糊滤镜操作, 可以用对话框函数进行图形化的输入★面向动画编程和游戏编程做了功能增强,可以方便地对帧率进行准确的控制 ★附带简单的3D矢量运算函数和类,便于3D计算 ★支持读写多种格式图片,支持读取 bmp, jpg, png, gif ,支持保存为bmp和 png★支持 GUI 模式编程 •简要安装说明把 include/ 文件,复制到你的编译器安装目录下的 include 目录内再把 lib 目录下的文件, 复制到你的编译器安装目录下的 lib 目录内,具体编译 器所依赖的文件情况:VC6:VS2008:VS2010: MinGW:•简要使用说明目前模拟了绝大多数 BGI 的绘图函数。

      使用上,基本和 TC / BC 没太大区别 看一个画圆的例子吧:#include "" " to "Microsoft Visual Studio \VC\include\" copy "lib\*.*" to "Microsoft Visual Studio \VC\lib\" 前面的 "include\*.*" 是安装包里的文件复制了这些文件后,就已经安装完成了然后,如果是VC或者VS那么要建立一个工程以下是VC6的操作步骤(但VS2008/VS2010/VS2012也类似),请按以下步骤做: 打开VC6后,新建一个 Win 32 Con sole工程(菜单-> 文件-> 新建),如下图: 右上角的工程名字写你喜欢的名字,其下方选择你要建立的工程的目录 点确定后,在弹出的对话框里选择“一个空工程”,然后直接点完成 然后再次新建,不过这次新建一个 C++ Source File ,见下图: 右边文件名写你喜欢建立的名字,然后点确定,就可以开始编写代码了最后,请编写如下测试代码检测你的设置是否正确:#include <>int main(){initgraph (640, 480);setcolor ( GREE)N;line (100, 100, 500, 200);getch();closegraph ();return 0;然后,按 F7 键,或者点菜单上的 Build (组建)来编译并链接,如果没有错误, 就可以按 F5 运行了。

      好了,为什么说 VS2008和VS2010也类似呢?看看如下 VS2008的截图你就明白 了:后面建立文件的时候,在左侧的 Ge neral就能找到C++源文件了如果你的是中 文版,那就细心找找吧,不难找的至于VS2010的就不截图了,因为几乎和 VS2008—样至于在Min GW下的编译问题,会麻烦一些,如果你懂使用命令行编译,那么需要 用如下指令编译:g++ -lgraphics -lgdi32 -limm32 -lmsimg32 -lole32 -loleaut32 -lwinmm -luuid -mwindows其中是你要编译的 cpp 文件如果你使用的是IDE,那就要看那个IDE是如何设置的,这里无法一一列举, 主要需要设置两样东西:一是建立 Win32 Application 工程(目的是让它以-mwindows来编译,这个选项 很重要)二是要添加链接库需要加入 graphics, gdi32, imm32, msimg32, ole32, oleaut32, winmm, uuid 共 8 个例如在 Code::Blocks 下(需要建立 project ),在菜单 - Project - build options ,设置 Linker 选项,如图:例如在下,则可以在 菜单->构建->构建选项 里,设置连接选项,如图: 但是, 如果你是以建立工程的方式建立,而不是建立单文件的话 , 或者你发现上面的设置无效, 那你需要在 菜单 - 工程 - 设置,在这设置连接选 项此外,C-Free比较特殊的一点是,如果需要编译为 Win32应用程序,那么要用Win Ma in来声明你的主函数,如:#include <>int WinMain() ,像即 12 年三月发布)★调整编译参数★默认标题风格调整★源代码目录结构调整2012年:0107:★对 objc++ 编译做兼容★部分函数风格调整★增加控件 button (未完善,测试版)2011年:0724:★ Bug修正★解决在 vs2010 下编译不正确的问题★ fix 在 linux wine 下窗口移动困难的问题0602:★增加 GUI★修正部分 png 读取错误★调整getkey函数,增加配对的kbmsg函数★增力卩getmouse函数★增加 setcaption 函数★版本更新为 Beta0520:★调整头文件,以使兼容性更好,减少链接出错★ GetFPS函数去掉参数★版本更新为 Release 0416:★增加png图片格式的读写函数(读取仍然用 getimage,保存用savepng) ★增加压缩解压函数( ege_compress/ege_uncompress/ege_uncompress_size ) ★版本更新为 Beta0414:★修正拖动时,窗口可能会漂移的问题★重绘效率优化★增加 INIT_LOCKWINDOW★批量绘图函数改名为窗口锁定函数(WindowLock/WindowUpdate/WindowUnlock,原函数仍然能使用★ IMAGE类增加getdc接口以便GDI操作(仅可用于Blt操作其它操作慎用)★ VC6库改用/MT编译以便多线程编程★版本更新为 Release 0401:★增加 drawlines 和 drawbezier 函数,优化 drawpoly 的效率 ★增加对设置为屏幕保护程序的支持★增加安装程序★增加WM_MOUSEWH宏定义以防在VC6上编译出错★文档更新★版本更新为 Release0321:★更名为 EGE 取代原 EGE( Easy Graphics Engine )库 ★增加旋转缩放贴图函数(接口还可能变化,暂不推荐使用)★增加窗口尺寸自动修正 (在分辨率变小强制窗口尺寸变小了, 再变回大分辨率 的时候)★版本更新为 Release 0129:★修正头文件一个类型错误的问题★增加 saveimage 函数,用来保存图片(目前只支持 bmp)★版本号更新为 Release2010年以前的更新记录:1213:★增加对基本音频播放的支持( wav, mp3, midi )★版本号更新为 Release1212:★更新文档★增加独立下载库和帮助文档★版本号更新为 Release 1207:★修正图形更新同步时可能偶然发生无法更新的情况★增加 setbkcolor_f 函数,功能是仅设置背景颜色, 仅当调用 cleardevice 时才使用这个颜色一次性清除屏幕 ★提升了重绘性能,并修正一个资源泄露的问题★增加swap page函数,实现双缓冲模式1122:★调整GetMousePos初始化坐标★修正鼠标滚轮坐标不正确的问题★随机函数改用专业算法,并增加 randomf 函数★增加3D数学函数★增加3D向量类★修正文档错误,补充没加到文档的函数★版本号改为 Release1118:★修正了三个新贴图函数的 BUG★增加了 outtextrect, setfontbkcolor★增加了 logo 显示★修正鼠标消息接收时内容不全的问题★修正多次开关批量绘图时可能会卡死的 BUG★相应更新文档★版本号改为 Release1113:★对 imagefilter_blurring 函数调整参数次序,并增加默认参数,以使其使用 更方便★优化透明,半透明贴图效率1111:★增加三个函数支持透明 / 半透明贴图 (putimage_transparent, putimage_alphablend, putimage_alphatransparent) ★增加图像模糊函数 (imagefilter_blurring)★版本号改为 Gamma1101:★调整 putpixels ,使得效率更高一些★修正部分绘图函数如 rectangle 不空心的 BUG★增加INITGRAPH宏,以便于使用全局IMAGE寸,抢先初始化★相应更新文档★版本号改为 Gamma1023:★增加 putpixels 函数,便于批量画点时提升速度★修正 setbkcolor 函数颜色不正确的 BUG1013:★增加 GetHInstance 函数,以便作为读入资源时的参数★调整 closegraph ,以便 close 后再次 init★修正 setviewport 在某个版本里误编辑的问题导致区域失效★textwidth 和 textheight 增加单字符版本★修正总是隐藏控制台无法故意显示的问题★增加KEYMSG_FIRSTDOWNF实现按键按下一次仅响应一次的需求★修正相应的俄罗斯方块例子(因增加了KEYMSG_FIRSTD1010:★增加ShowMouse函数,以控制鼠标是否隐藏★增加对VC2005的支持(不带SP1,打了。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.