资源描述
2020/7/6,河北农业大学 张玉新,1,C语言图形程序设计基础,计算机图形学相关,2020/7/6,河北农业大学 张玉新,2,1.屏幕设置 1)设置屏幕为图形模式 2)选择背景与实体颜色 3)计算坐标 4)调用绘图语句绘制实体 1.1 屏幕显示模式与坐标系 文本模式与图形模式 1.2 图形驱动程序与图形模式,2020/7/6,河北农业大学 张玉新,3,图形驱动程序及其相应的模式 图形驱动器(gdriver) 图形模式(gmode) 值 调色板 分辨率 CGA 1 CGAC0 0 C0 320*200 CGAC1 1 C1 320*200 CGAC2 2 C2 320*200 CGAC3 3 C3 320*200 CGAHI 4 2色 640*200 MCGA2 MCGAC0 0 C0 320*200 MCGAC11 C1 320*200 MCGAC2 2 C2 320*200 MCGAC3 3 C3 320*200 MCGAMED 4 2色 640*200 MCGAHI5 2色 640*480 EGA 3 EGALO 0 16色 640*200 EGAHI 1 16色 640*350,2020/7/6,河北农业大学 张玉新,4, EGA64 4 EGA64LO 0 16色 640*200 EGA64HI 1 4色 640*350 EGAMON 5 EGAMONHI 0 2色 640*350 IBM85146 IBM8514LO 0 256色 640*480 IBM8514HI 1 256色 1024*768 HERC 7 HERCMONOHI0 2色 720*348 ATT400 8ATT400C0 0 C0320*200 ATT400C1 1 C1 320*200 ATT400C2 2 C2 320*200 ATT400C3 3 C3 320*200 ATT400MED 4 2色 320*200 ATT400HI 5 2色 320*200 VGA 9 VGALO 0 16色 640*200 VGAMED 1 16色 640*350 VGAHI 2 16色 640*480 PC3270 10 PC3270HI 0 2色 720*350 DETECT 0 用于硬件测试,2020/7/6,河北农业大学 张玉新,5,1.3 图形系统初始化和模式控制 include /*要使用图形函数,必须包含此函数库*/ 1)图形系统初始化 void far initgraph (int *gdriver,int *gmode,char *path) /*已知显示器类型的图形系统初始化*/,#include graphics.h main() int gdriver,gmode; gdriver=CGA; /*设置显示模式为CGA*/ gmode=CGAC0; /*选用CGA图形模式*/ initgraph( /*关闭图形系统,回到文本模式*/ ,2020/7/6,河北农业大学 张玉新,6,void far detectgraph (int *gdriver,int *gmode) /*不知道显示器类型的图形系统初始化 */,#include graphics.h main() int gdriver,gmode; detectgraph( ,2020/7/6,河北农业大学 张玉新,7,DETECT /*自动初始化图形系统*/,#include graphics.h #include “conio.h main() int gdriver=DETECT,gmode; /*自动搜寻显示器类型和显示模式*/ initgraph( ,2020/7/6,河北农业大学 张玉新,8,2)图形系统的关闭 void far closegraph( ),3)图形模式的控制int far getgraphmode( ) 返回当前模式值。 void far restorecrtmode();恢复屏幕在初始化前的模式。 void far setgraphmode(int gmode);设置系统图形模式并清屏幕。 Void far getmoderange(int driver,int *lomode,int *himode);获取图形驱动器可使用的模式范围。,2020/7/6,河北农业大学 张玉新,9,1.4.图形坐标的设置 定点:moveto (int x, int y); moverel (int x, int y) 读取当前坐标位置:getx();gety(); 读取x,y轴的最大值:getmaxx(); getmaxy(); 1.5.屏幕窗口操作 void far cleardevice( )此操作是清除整个屏幕,并把当前光标位置重新设置为(0,0)。,2020/7/6,河北农业大学 张玉新,10,6.图形颜色设置 设置背景色: void far setbkcolor( int color); 设置作图色: void far setcolor(int color); 有关屏幕颜色的符号常数表 符号常数 数值 含义 符号常数 数值 含义 BLACK 0 黑色 DARKGRAY 8 深灰 BLUE 1 兰色 LIGHTBLUE 9 深兰 GREEN 2 绿色 LIGHTGREEN 10 淡绿 CYAN 3 青色 LIGHTCYAN 11 淡青 RED 4 红色 LIGHTRED 12 淡红 MAGENTA5 洋红 LIGHTMAGENTA 13 淡洋红 BROWN 6 棕色 YELLOW 14 黄色 LIGHTGRAY7 淡灰 WHITE 15 白色,2020/7/6,河北农业大学 张玉新,11,#include #include void main() int x; int gdriver=DETECT,gmode; initgraph( ,
展开阅读全文