资源描述:
《C语言图形化编程基础入门.docx》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、二、C的图形模式编程2.1图形编程基础VC+EasyX库里提供了图形函数就可以在VC环境下进行图形编程。对图形函数的操作都是在视口(Viewport)上进行。用户可以在屏幕上定义大小不同的视口,若不定义视口大小,它就是整个屏幕。视口是在图形屏幕状态下的概念,用户可访问的最小单位是一个像素(像素这一术语最初用来指显示器上最小的、单独的发光点单元。然而现在,其含义拓宽为指图形显示器上的最小可访问点)。文本与图形都可以在视口上显示。 图形视口的左上角坐标为(0,0)。例如:分辨率为640*480的视口像素点的定位显示器在图形模式下工作时,显示的单位是像
2、素点,通过控制各像素点的颜色和灰度等级来形成图形。因此绘图的第一步是进行图形模式的初始化,系统进入绘图模式。(1) initgraph()图形初始化函数用法: HWNDinitgraph( intwidth, intheight, intflag=NULL); 示例:以下局部代码创建一个尺寸为640x480的绘图环境: initgraph(640,480);例2-1:调用initgraph()设置640*480的图形模式,在屏幕中央显示如下的图形。参考代
3、码:#include#includeint main(){ initgraph(640,480); line(200,240,440,240); line(320,120,320,360); getch(); closegraph(); return0;} [学习单步执行]试着单步执行刚才的程序,由于绘图和多线程等因素的限制,请务必按照以下步骤尝试(熟练了以后就不用了):1.将VC取消最大化,并缩小窗口,能看到代码就行。2.按一下F10(单步执行),会
4、看到屏幕上出现一个黄色的小箭头,指示将要执行的代码。3.当箭头指向initgraph()语句时,按F10,能看到窗口发生了变化。4.将新的绘图窗口和VC并排放,相互不要有覆盖。这步很重要,否则绘图内容将会被VC窗口覆盖。5.F10执行getch后,记得激活绘图窗口,并按任意键,否则程序不会继续执行。6.closegraph后,直接按F5执行全部剩余程序,结束。单步执行很重要,可以让你知道程序执行到哪里是什么效果,哪条语句执行出了问题等等。例2-2:更进一步,打印出分辨率,并在屏幕中央显示如下的图形参考代码#include#inc
5、lude#include#defineWIDTH 150 /*矩形的宽度*/#defineHEIGHT 100 /*矩形的高度*/intstartX,startY; /*矩形的左上角坐标*/intmaxX;intmaxY;voidinit(); /*图形模式的初始化*/voidshowText(); /*显示文本*/voiddrawK(); /*画图形*/int main(){ init(); showText(); drawK();
6、 closegraph(); return0;}voidinit(){ initgraph(640,480); maxX=getmaxx(); maxY=getmaxy(); setbkcolor(BLACK); /*设置背景色为黑色*/ cleardevice(); /*清屏*/}voidshowText(){ charstr[50]; sprintf(str,"(%d,%d)",maxX,maxY); /*将要显示的分辩率以字符串形式保存到str*/
7、 outtextxy(maxX/4,maxY/4,str); /*在指定位置显示字符串str*/}voiddrawK(){ startX=(maxX-WIDTH)/2; startY=(maxY-HEIGHT)/2; setcolor(WHITE); rectangle(startX,startY,startX+WIDTH,startY+HEIGHT); setcolor(YELLOW); line(startX,startY,startX+WIDTH,start
8、Y+HEIGHT); line(startX+WIDTH,startY,startX,startY+HEIGHT);