- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章 图形处理 10.1 图形输出初始化和显示模式设 10.2 绘图函数 10.3 图形处理应用实例 10.1 图形输出初始化和显示模式设置 10.2 绘图函数 前一节介绍了图形方式初始化的函数和设置显示模式的函数,本节介绍绘制各种图形的函数。在C语言程序中,要使用各种图形函数,必须首先进行图形输出初始化,必要时进行模式设置(如果要改变默认显示模式时)。本节及下一节中在使用各种图形函数时,均假定已进入图形方式,且当前显示模式对应的分辨率为640×480。 屏幕上的默认坐标系左上角为(0,0),右下角为(列数-1,行数-1)。横坐标轴为X轴,纵坐标轴为Y轴,X轴正方向朝右,Y轴正方向朝下。以分辨率640×480为例,在屏幕上X和Y的最小值都是0,最大值分别为640和480。在屏幕上作图的很多函数都涉及到坐标点(x,y)。下面介绍各种函数。 10.2.1 绝对移动函数moveto和相对移动函数 函数首部分别为: void moveto(int x,int y) void moverel(int dx,int dy) 其中x、y表示坐标点,dx、dy分别表示针对当前点的横坐标增量和纵坐标增量。函数moveto的功能是将点(x,y)作为当前点,作为后边绘图的默认起点。函数moverel的功能是将当前点移动相对位置后的值作为当前点。 10.2.2 获取当前点的函数getx和gety 函数首部分别为: int getx(void) int gety(void) 这两个函数分别返回当前点的X坐标和Y坐标。 10.2.3 设置颜色的函数setbkcolor和setcolor 函数首部分别为: void setbkcolor(int color) void setcolor(int color) 前者的作用是设置背景色,后者的作用是设置前景色。其中color表示一个整数,不同的整数代表不同的颜色。各种颜色与整数及符号常数对应情况如表10-1所示。 10.2.4 获取颜色的函数getbkcolor和getcolor 函数首部分别为: int getbkcolor(void) int setcolor(void) 前者返回当前背景色对应的数值,后者返回当前前景色对应的数值。 10.2.5 清除屏幕函数cleardevice 函数首部为: void cleardevice(void) 函数功能:将屏幕上已有内容清除掉。 10.2.6 获取像素和画像素的函数getpixel和putpixel 函数首部分别为: unsigned getpixel(int x,int y) void putpixel(int x,int y,int color) 其中(x,y)是屏幕坐标,color是颜色。函数getpixel的功能是获取屏幕上(x,y)处的颜色;函数putpixel的功能是在屏幕上(x,y)处画颜色为color的点。 下面程序画出在-100≤x≤100内的一段抛物线,颜色取白色。程序运行结果如图10-2所示。 #includegraphics.h main() {int x,y; int graphdriver=DETECT,graphmode; initgraph (graphdriver,graphmode,c:\TC); setgraphmode(2); /*对VGA显卡,模式2对应的分辨率为640×480*/ for (x=-100; x=100;x++) y=1.0/100*x*x; putpixel (x,y,WHITE); } 10.2.7 画线段的函数line、lineto和linerel 函数首部分别为: void line (int x1,int y1,int x2,int y2) void lineto (int x,int y) void linerel (int dx,int dy) 其中x、y表示坐标点,dx、dy分别表示针对当前点的横坐标增量和纵坐标增量。函数line的功能是从点(x1,y1)到(x2,y2)画线段;函数lineto的功能是从当前点到点(x,y)画线段;函数linerel的功能是从当前点(x0,y0)到点(x0+dx,y0+dy)画线段。 10.2.8 设置画线类型的函数setlinestyle 函数首部为: void setlinestyle(int linestyle,unsigned upattern,int thickness) 其中,参数linestyle代表直线类型,upattern代表图案(一般取0),thickness代表直线粗细。例如下面程序: 10.3
您可能关注的文档
- 可视化编程应用——Visual Basic 6.0 第二版 教学课件 作者 杜秋华 康慧芳配套习题1 笔试试题二.doc
- 可视化编程应用——Visual Basic 6.0 第二版 教学课件 作者 杜秋华 康慧芳配套习题1 笔试试题一(答案).doc
- 可视化编程应用——Visual Basic 6.0 第二版 教学课件 作者 杜秋华 康慧芳配套习题1 笔试试题一.doc
- 可视化编程应用——Visual Basic 6.0 第二版 教学课件 作者 杜秋华 康慧芳配套习题1 上机试题二.doc
- 可视化编程应用——Visual Basic 6.0 第二版 教学课件 作者 杜秋华 康慧芳配套习题1 上机试题一.doc
- 可视化编程应用——Visual Basic 6.0 第二版 教学课件 作者 杜秋华 康慧芳习题答案 第1章习题参考答案.doc
- 可视化编程应用——Visual Basic 6.0 第二版 教学课件 作者 杜秋华 康慧芳习题答案 第2章习题参考答案.doc
- 可视化编程应用——Visual Basic 6.0 第二版 教学课件 作者 杜秋华 康慧芳习题答案 第3章习题参考答案.doc
- 可视化编程应用——Visual Basic 6.0 第二版 教学课件 作者 杜秋华 康慧芳习题答案 第5章习题参考答案.doc
- 可视化编程应用——Visual Basic 6.0 第二版 教学课件 作者 杜秋华 康慧芳习题答案 第6章习题参考答案.doc
- 实用EDA技术与VHDL教程 教学课件 作者 赵岩 林白 王志强 第1章 绪论.ppt
- 实用EDA技术与VHDL教程 教学课件 作者 赵岩 林白 王志强 第2章 EDA常用设计软件介绍.ppt
- 实用EDA技术与VHDL教程 教学课件 作者 赵岩 林白 王志强 第3章 VHDL硬件描述语言.ppt
- 实用EDA技术与VHDL教程 教学课件 作者 赵岩 林白 王志强 第4章 有限状态机设计.ppt
- 实用EDA技术与VHDL教程 教学课件 作者 赵岩 林白 王志强 第5章 VHDL规范化标准及常见Warning分析.ppt
- 实用EDA技术与VHDL教程 教学课件 作者 赵岩 林白 王志强 第6章 EDA技术综合实验指导.ppt
- 实用催化( 第二版) 教学课件 作者 高正中戴洪兴 编著 Chapter 1.ppt
- 实用催化( 第二版) 教学课件 作者 高正中戴洪兴 编著 Chapter 2 1.ppt
- 实用催化( 第二版) 教学课件 作者 高正中戴洪兴 编著 Chapter 2 2.ppt
- 实用催化( 第二版) 教学课件 作者 高正中戴洪兴 编著 Chapter 2 3.ppt
文档评论(0)