c语言中图像处理相关函数 c语言图像库函数( 四 )


MAGENTA5洋红LIGHTMAGENTA13淡洋红
BROWN6棕色YELLOW14黄色
LIGHTGRAY7淡灰WHITE15白色
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
对于CGA适配器, 背景色可以为表3中16种颜色的一种, 但前景色依赖于不同
的调色板 。共有四种调色板, 每种调色板上有四种颜色可供选择 。不同调色板所
对应的原色见表4 。
表4 CGA调色板与颜色值表
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
调色板颜色值
—————————————————————————————
符号常数数值0123
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
C00背景绿红黄
C11背景青洋红白
C22背景淡绿淡红黄
C33背景淡青淡洋红白
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
清除图形屏幕内容使用清屏函数, 其调用格式如下:
voide far cleardevice(void);
另外, TURBO C也提供了几个获得现行颜色设置情况的函数 。
int far getbkcolor(void);返回现行背景颜色值 。
int far getcolor(void);返回现行作图颜色值 。
int far getmaxcolor(void);返回最高可用的颜色值 。
4. 基本图形函数
基本图形函数包括画点, 线以及其它一些基本图形的函数 。本节对这些函数
作一全面的介绍 。
一、画点
1. 画点函数
void far putpixel(int x, int y, int color);
该函数表示有指定的象元画一个按color所确定颜色的点 。对于颜色color的
值可从表3中获得而对x, y是指图形象元的坐标 。
在图形模式下, 是按象元来定义坐标的 。对VGA适配器,它的最高分辨率为
640x480, 其中640为整个屏幕从左到右所有象元的个数, 480 为整个屏幕从上到
下所有象元的个数 。屏幕的左上角坐标为(0, 0), 右下角坐标为(639, 479), 水
平方向从左到右为x轴正向, 垂直方向从上到下为y轴正向 。TURBO C 的图形函数
都是相对于图形屏幕坐标, 即象元来说的 。
关于点的另外一个函数是:
int far getpixel(int x, int y);
它获得当前点(x, y)的颜色值 。
2. 有关坐标位置的函数
int far getmaxx(void);
返回x轴的最大值 。
int far getmaxy(void);
返回y轴的最大值 。
int far getx(void);
返回游标在x轴的位置 。
void far gety(void);
返回游标有y轴的位置 。
void far moveto(int x, int y);
移动游标到(x, y)点, 不是画点, 在移动过程中亦画点 。
void far moverel(int dx, int dy);
移动游标从现行位置(x, y)移动到(x+dx, y+dy)的位置, 移动过程中不画点 。
二、画线
1. 画线函数
TURBO C提供了一系列画线函数, 下面分别叙述:
void far line(int x0, int y0, int x1, int y1);
画一条从点(x0, y0)到(x1, y1)的直线 。
void far lineto(int x, int y);
画一作从现行游标到点(x, y)的直线 。
void far linerel(int dx, int dy);
画一条从现行游标(x, y)到按相对增量确定的点(x+dx, y+dy)的直线 。
void far circle(int x, int y, int radius);
以(x, y)为圆心, radius为半径, 画一个圆 。
void far arc(int x, int y, int stangle, int endangle, int radius);
以(x, y)为圆心, radius为半径, 从stangle开始到endangle结束(用度表示)
画一段圆弧线 。在TURBO C中规定x轴正向为0度, 逆时针方向旋转一周,依次为
90, 180, 270和360度(其它有关函数也按此规定, 不再重述) 。
void ellipse(int x, int y, int stangle, int endangle, int xradius,

推荐阅读