C语言图形方式下的编程概要.ppt

C语言图形方式下的编程概要

C语言图形方式下的编程 TC下16位系统,?graphics?库 前言 显示器有两种工作方式:文本方式(又称字符方式)和图形方式,缺省显示方式为文本方式。 在文本显示方式下,显示的基本单位为字符,显示屏可利用大小一般为25行*80列。在图形方式下,显示的基本单位为像素点,显示屏幕可利用的大小,取决于图形系统初始化时设置的图形模式。 显示图形时,图形上任意一点的位置均可用坐标(x,y)来表示,显示器的坐标系如图所示。 如何在TC环境下显示图形?程序中应包括哪些代码? 在源程序的开头包含图形头文件graphics.h 在使用图形函数之前,还必须使用图形系统初始化函数initgraph(),将显示适配器设置成某一图形模式。 一、TC V2.0图形功能 1.图形模式的初始化 在屏幕作图之前,必须根据显示器适配器的种类将显示器设置成为某种图形模式。 1.1图形系统初始化——initgraph()函数 (1)调用格式:initgraph(driver,mode,path); drive——图形驱动程序(扩展名为.bgi)。不同的显示器,要装入不同的图形驱动程序。见图13-3 mode——图形模式。见图13-4 path——图形驱动程序路径。若在当前目录下,可用空串“”代替。 (2)功能:从磁盘上装入一个图形驱动程序来初始化图形系统,并将显示器设置为图形模式。 注意:如果路径不正确,程序在编译的时候就不能找到驱动程序,图形将无法正常显示。 若不能显示图像,应该做哪些其他的设置? 1.TC环境:Options/Linker中的Graphics library 选为on 2.在TC的DOS环境下: I. 在C:\TC子目录下输入命令:BGIOBJ EGAVGA II. 在C:\TC子目录下输入命令:TLIBLIB\GRAPHICS.LIB+EGAVGA III. 在程序中initgraph()函数调用之前加上一句: registerbgidriver(EGAVGA_driver); 如何设置图形驱动程序和图形模式? /*案例代码文件名:AL13_1.C*/ /*功能:图形模式的初始化*/ #includegraphics.h/*包含graphics.h*/ main() {int driver, mode; driver = CGA; /*显示器为CGA */ mode = CGAC0; /*选用CGAC0图形模式*/ initgraph(driver, mode,c:\\tc20h); /*图形模式初始化*/ bar(100, 80, 200,180); /*画一个矩形*/ getch(); /*等待按键*/ closegraph(); /*关闭图形模式返回字符模式*/ } 若不知道图形显示卡的类型怎么办? 1.2图形适配器检测——detectgraph()函数 (1)调用格式:detectgraph(*driver,*mode); (2)功能:在计算机有图形适配器的情况下,确定其类型,返回适合于适配器的图形驱动程序的类型代码,用driver所指向的整型量表示,把mode所指向的变量设置为适配器所能支持的最高分辨率。 通常利用此函数确定系统中图形适配器的类型。 补充例题:1-1 #include graphics.h main( ) { int gdriver, gmode; detectgraph(gdriver, gmode); /*自动测试硬件*/ printf(driver is %d, mode is %d\n, gdriver,gmode); /*输出测试结果*/ getch(); initgraph(gdriver, gmode, c:\\tc20h); /* 根据测试结果初始化图形*/ circle(320,240,50); circle(320,240,80); circle(320,240,110); getch(); closegraph(); } 1.3关闭图形模式——c

文档评论(0)

1亿VIP精品文档

相关文档