C语言图形化编程基础入门

C语言图形化编程基础入门

ID:45755652

大小:82.94 KB

页数:15页

时间:2019-11-17

C语言图形化编程基础入门_第1页
C语言图形化编程基础入门_第2页
C语言图形化编程基础入门_第3页
C语言图形化编程基础入门_第4页
C语言图形化编程基础入门_第5页
资源描述:

《C语言图形化编程基础入门》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、二、C的图形模式编程2.1图形编程基础VC+EasyX库里提供了图形函数就可以在VC环境下进行图形编程。对图形函数的操作都是在视口(Viewport)上进行。用户可以在屏幕上定义大小不同的视口,若不定义视口大小,它就是整个屏幕。视口是在图形屏幕状态下的概念,用八可访问的最小单位是一个像素(像素这一•术语最初用来指显示器上最小的、单独的发光点单元。然而现在,其含义拓宽为指图形显示器上的最小可访问点)。文本与图形都可以在视口上显示。图形视口的左上角坐标为(0,0)。例如:分辨率为640*480的视口像

2、素点的定位639I23(O')0640-*4«0)的图形视口479显示器在图形模式下工作时,显示的单位是像索点,通过控制各像素点的颜色和灰度等级來形成图形。因此绘图的第一步是进行图形模式的初始化,系统进入绘图模式。(1)initgraph()图形初始化函数用法:HWNDinitgraph(intwidth,intheight,intflag=NULL);示例:以下局部代码创建一个尺寸为640x480的绘图环境:initgraph(640,480);例2-1:调用initgraph()设置640*4

3、80的图形模式,在屏幕中央显示如下的图形。参考代码:#include#includeintmain(){initgraph(640,480);line(200,240,440,240);line(320,120,320,360);getch();closegraph();return0;[学习单步执行]试着单步执行刚才的程序,山于绘图和多线程等因素的限制,请务必按照以下步骤尝试(熟练了以后就不用了):1.将VC取消最大化,并缩小窗口,能看到代码就行。2.按

4、一下F10(单步执行),会看到屏幕上出现一个黄色的小箭头,指示将耍执行的代码。3.当箭头指向initgraph()®句时,按F10,能看到窗口发生了变化。4.将新的绘图窗口和VC并排放,相互不要有覆盖。这步很重要,否则绘图内容将会被VC窗口覆盖。5.F10执行getch后,记得激活绘图窗口,并按任意键,否则程序不会继续执行。6.closcgraph后,直接按F5执行全部剩余程序,结束。单步执行很重要,可以让你知道程序执行到哪里是什么效果,哪条语句执行出了问题等等。例2・2:更进一步,打印出分辨率,

5、并在屏幕中央显示如下的图形(639,479)参考代码#include#include#include#defineWIDTH150/*矩形的宽度*/#defineHEIGHT100/*矩形的高度*/intstartX,startY;/*矩形的左上角坐标*/intmaxX;intmaxY;voidinit();/*图形模式的初始化*/voidshowText();/*显示文本*/voiddrawK();/*画图形*/intmain(){in

6、it();showText();drawK();closegraph();return0;}voidinit(){initgraph(640,480);maxX=getmaxx();maxY=gctmaxy();setbkcolor(BLACK);/*设置背景色为黑色*/cleardevice();/*清屏*/}voidshowText(){charstr[5O];sprintf(str,,,(%d,%d)u,maxX,maxY);/*将要显示的分辩率以字符串形式保存至!Istr*/outtext

7、xy(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^startY+HEIGHT);line(startX+W!DTH,star

8、tY,startX,startY+HEIGHT);setcolor(RED);circle(maxX/2,maxY/2,30);getch();〃會停,任意健继续例2・3:用若干个小矩形块画一个围墙的效果,如下图:参考代码:#include#includeintmaxX;intmaxY;voidinit(){initgraph(640,480);maxX=getmaxx()+l;maxY=getmaxy()+l;voiddrawWall(v

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。