- 1、本文档共66页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
画点1.画点函数voidfarputpixel(intx,inty,intcolor);该函数表示有指定的象元画一个按color所确定颜色的点。对于颜色color的值可从表3中获得而对x,y是指图形象元的坐标。在图形模式下,是按象元来定义坐标的。对VGA适配器,它的最高分辨率为640x480,其中640为整个屏幕从左到右所有象元的个数,480为整个屏幕从上到下所有象元的个数。屏幕的左上角坐标为(0,0),右下角坐标为(639,479),水平方向从左到右为x轴正向,垂直方向从上到下为y轴正向。TURBOC的图形函数都是相对于图形屏幕坐标,即象元来说的。关于点的另外一个函数是:intfargetpixel(intx,inty);它获得当前点(x,y)的颜色值。
2.有关坐标位置的函数
intfargetmaxx(void);返回x轴的最大值。
intfargetmaxy(void);返回y轴的最大值。
intfargetx(void);返回游标在x轴的位置。
voidfargety(void);返回游标有y轴的位置。
voidfarmoveto(intx,inty);移动游标到(x,y)点,不是画点,在移动过程中亦画点。
voidfarmoverel(intdx,intdy);移动游标从现行位置(x,y)移动到(x+dx,y+dy)的位置,移动过程中不画点。
画线1.画线函数
TURBOC提供了一系列画线函数,下面分别叙述:
voidfarline(intx0,inty0,intx1,inty1);画一条从点(x0,y0)到(x1,y1)的直线。
voidfarlineto(intx,inty);画一作从现行游标到点(x,y)的直线。
voidfarlinerel(intdx,intdy);画一条从现行游标(x,y)到按相对增量确定的点(x+dx,y+dy)的直线。
voidfarcircle(intx,inty,intradius);以(x,y)为圆心,radius为半径,画一个圆。
voidfararc(intx,inty,intstangle,intendangle,intradius);以(x,y)为圆心,radius为半径,从stangle开始到endangle结束(用度表示)画一段圆弧线。在TURBOC中规定x轴正向为0度,逆时针方向旋转一周,依次为90,180,270和360度(其它有关函数也按此规定不再重述)。
voidellipse(intx,inty,intstangle,intendangle,intxradius,intyradius);以(x,y)为中心,xradius,yradius为x轴和y轴半
径,从角stangle开始到endangle结束画一段椭圆线,当stangle=0,endangle=360时,画出一个完整的椭圆。
voidfarrectangle(intx1,inty1,intx2,inty2);以(x1,y1)为左上角,(x2,y2)为右下角画一个矩形框。
voidfardrawpoly(intnumpoints,intfar*polypoints);画一个顶点数为numpoints,各顶点坐标由polypoints给出的多边形。polypoints整型数组必须至少有2倍顶点数个无素。每一个顶点的坐标都定义为x,y,并且x在前。值得注意的是当画一个封闭的多边形时,numpoints的值取实际多边形的顶点数加一,并且数组polypoints中第一个和最后一个点的坐标相同。下面举一个用drawpoly()函数画箭头的例子。#include
#include
intmain()
{
intgdriver,gmode,i;
intarw[16]={200,102,300,102,300,107,330,
100,300,93,300,98,200,98,200,102};
gdriver=DETECT;
initgraph(gdriver,gmode,c:\\caic\\bgi);
setbkcolor(BLUE);
cleardevice();
setcolor(12);/*设置作图颜色*/
drawpoly(8,arw);/*画一箭头*/
getch();
closegraph();
retur
文档评论(0)