网站大量收购独家精品文档,联系QQ:2885784924

9第九章图形与音乐编程.ppt

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
图形及音乐编程基础 本章所介绍的内容需要在Turbo C 或WIN-TC的平台下调试和运行 。 图形系统的初始化函数 void far initgraph(int far *graphdriver,int far *graphmode,char *path); 图形系统检测函数 void far detectgraph(int far *graphdriver,int far *graphmode); * C 程 序 设 计 | 第 九 章 * C 程 序 设 计 | 第 九 章 第九章 图形显示基础 基本绘图函数 画线的线型设定函数 封闭图形的填色函数及有关画图函数 图形模式下的文本输出 音乐编程 本讲主要内容 Turbo C为用户提供了一个功能很强的画图软件库,又称为BorLand图形接口(BGI),它包含图形库文件(graphics.lib)、图形头文件(graphics.h)、许多图形显示器的驱动程序和一些字符集的字体驱动程序。用户在自己的画图源程序中必须包含graphics.h头文件,在进行目标程序连接时,要将graphics.lib连接到自己的目标程序中去。 图形显示基础 图形系统初始化及检测 其中graphdriver和graphmode分别表示图形驱动器和模式,path是指图形驱动程序所在的目录路径。 初始化实现图形系统,以坐标点(100,100)为圆心画一个半径为50的圆 。 #include graphics.h main() { int graphdriver=DETECT,graphmode; initgraph(graphdriver,graphmode,); circle(100,100,50); getch(); closegraph(); } 图形初始化示例 例9.1 图形检测函数的使用。 #include graphics.h main() { int graphdriver; int graphmode; detectgraph(graphdriver,graphmode); switch(graphdriver) { case CGA:graphmode=1; /*设置成低分辨模式*/ break; case EGA:graphmode=0; /*设置成低分辨模式*/ break; case VGA:graphmode=1; /*设置成中分辨模式*/ break; case -2: printf(\nGraphics adapter not installed); exit(1); default: printf(\nGraphics adapter is not CGA,EGA,or VGA); } initgraph(graphdriver,graphmode,); circle(100,100,50); getch(); closegraph(); } 图形初始化示例 例9.2 在文本方式下,屏幕被分成25、40或50行,80或40列宽。系统默认的坐标是:原点在屏幕左上角(1,1),坐标是整数,X坐标从左向右增加,Y坐标从上到下增加。 在图形方式下,屏幕被划分为像素,每个像素在屏幕上显示一个点。像素的个数取决于机器中安装的视频适配器的类型和适配器的工作方式。系统默认的坐标是:原点在屏幕左上角(0,0),坐标为整数,X坐标从左向右增加,Y坐标从上到下增加。屏幕上的X、Y值都有一个最大值。 图形坐标 在以点(320,220)为原点的新坐标系中,画一个以该坐标系中的点(50,50)为圆心,半径为50的圆。 #include graphics.h main() { int graphdriver=DETECT,graphmode; int before_x,before_y,later_x=50,later_y=50; int origin_x=320,origin_y=220; initgraph(graphdriver,graphmode,); before_x=origin_x+later_x; before_y=origin_y-later_y; circle(before_x,before_y,50); getch(); closegr

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档