www.pudn.com > ZLG_GUI_spilcd.zip > GUI_BASIC.H, change:2014-10-25,size:8214b


/**************************************************************************************** 
* 文件名:GUI_BASIC.H 
* 功能:GUI基本画图函数。 
* 说明: 
****************************************************************************************/ 
#ifndef  GUI_BASIC_H 
#define  GUI_BASIC_H 
 
/* 定义坐标数据结构 */ 
typedef  struct 
         {  u16  x;				// x坐标变量 
            u16  y;				// y坐标变量 
         }  
         PointXY; 
 
 
/**************************************************************************** 
* 名称:GUI_Rectangle() 
* 功能:画矩形。 
* 入口参数: x0		矩形左上角的x坐标值 
*           y0		矩形左上角的y坐标值 
*           x1      矩形右下角的x坐标值 
*           y1      矩形右下角的y坐标值 
*           color	显示颜色 
* 出口参数:无 
* 说明:操作失败原因是指定地址超出有效范围。 
****************************************************************************/ 
extern  void  GUI_Rectangle(u16 x0, u16 y0, u16 x1, u16 y1, u16 color); 
 
 
/**************************************************************************** 
* 名称:GUI_RectangleFill() 
* 功能:填充矩形。画一个填充的矩形,填充色与边框色一样。 
* 入口参数: x0		矩形左上角的x坐标值 
*           y0		矩形左上角的y坐标值 
*           x1      矩形右下角的x坐标值 
*           y1      矩形右下角的y坐标值 
*           color	填充颜色 
* 出口参数:无 
* 说明:操作失败原因是指定地址超出有效范围。 
****************************************************************************/ 
extern void  GUI_RectangleFill(u16 x0, u16 y0, u16 x1, u16 y1, u16 color); 
 
 
/**************************************************************************** 
* 名称:GUI_Square() 
* 功能:画正方形。 
* 入口参数: x0		正方形左上角的x坐标值 
*           y0		正方形左上角的y坐标值 
*           with    正方形的边长 
*           color	显示颜色 
* 出口参数:无 
* 说明:操作失败原因是指定地址超出有效范围。 
****************************************************************************/ 
extern void  GUI_Square(u16 x0, u16 y0, u16  with, u16  color); 
 
 
/**************************************************************************** 
* 名称:GUI_Line() 
* 功能:画任意两点之间的直线。 
* 入口参数: x0		直线起点的x坐标值 
*           y0		直线起点的y坐标值 
*           x1      直线终点的x坐标值 
*           y1      直线终点的y坐标值 
*           color	显示颜色 
* 出口参数:无 
* 说明:操作失败原因是指定地址超出有效范围。 
****************************************************************************/ 
extern void  GUI_Line(u16 x0, u16 y0, u16 x1, u16 y1, u16 color); 
 
 
/**************************************************************************** 
* 名称:GUI_LineWith() 
* 功能:画任意两点之间的直线,并且可设置线的宽度。 
* 入口参数: x0		直线起点的x坐标值 
*           y0		直线起点的y坐标值 
*           x1      直线终点的x坐标值 
*           y1      直线终点的y坐标值 
*           with    线宽(0-50) 
*           color	显示颜色 
* 出口参数:无 
* 说明:操作失败原因是指定地址超出有效范围。 
****************************************************************************/ 
extern void  GUI_LineWith(u16 x0, u16 y0, u16 x1, u16 y1, u8 with, u16 color); 
 
 
/**************************************************************************** 
* 名称:GUI_LineS() 
* 功能:多个点之间的连续连线。从第一点连到第二点,再连到第三点... 
* 入口参数: points  多个点坐标数据的指针,数据排列为(x0,y0)、(x1,y1)、(x2,y2)... 
*           no      点数目,至少要大于1 
*           color	显示颜色 
* 出口参数:无 
* 说明:操作失败原因是指定地址超出有效范围。 
****************************************************************************/ 
extern void  GUI_LineS(u16 const *points, u8 no, u16 color); 
 
 
/**************************************************************************** 
* 名称:GUI_Circle() 
* 功能:指定圆心位置及半径,画圆。 
* 入口参数: x0		圆心的x坐标值 
*           y0		圆心的y坐标值 
*           r       圆的半径 
*           color	显示颜色 
* 出口参数:无 
* 说明:操作失败原因是指定地址超出有效范围。 
****************************************************************************/ 
extern void  GUI_Circle(u16 x0, u16 y0, u16 r, u16 color); 
 
 
/**************************************************************************** 
* 名称:GUI_CircleFill() 
* 功能:指定圆心位置及半径,画圆并填充,填充色与边框色一样。 
* 入口参数: x0		圆心的x坐标值 
*           y0		圆心的y坐标值 
*           r       圆的半径 
*           color	填充颜色 
* 出口参数:无 
* 说明:操作失败原因是指定地址超出有效范围。 
****************************************************************************/ 
extern void  GUI_CircleFill(u16 x0, u16 y0, u16 r, u16 color); 
 
 
/**************************************************************************** 
* 名称:GUI_Ellipse() 
* 功能:画正椭圆。给定椭圆的四个点的参数,最左、最右点的x轴坐标值为x0、x1,最上、最下点 
*      的y轴坐标为y0、y1。 
* 入口参数: x0		最左点的x坐标值 
*           x1		最右点的x坐标值 
*           y0		最上点的y坐标值 
*           y1      最下点的y坐标值 
*           color	显示颜色 
* 出口参数:无 
* 说明:操作失败原因是指定地址超出有效范围。 
****************************************************************************/ 
extern void  GUI_Ellipse(u16 x0, u16 x1, u16 y0, u16 y1, u16 color); 
 
 
/**************************************************************************** 
* 名称:GUI_EllipseFill() 
* 功能:画正椭圆,并填充。给定椭圆的四个点的参数,最左、最右点的x轴坐标值为x0、x1,最上、最下点 
*      的y轴坐标为y0、y1。 
* 入口参数: x0		最左点的x坐标值 
*           x1		最右点的x坐标值 
*           y0		最上点的y坐标值 
*           y1      最下点的y坐标值 
*           color	填充颜色 
* 出口参数:无 
* 说明:操作失败原因是指定地址超出有效范围。 
****************************************************************************/ 
extern void  GUI_EllipseFill(u16 x0, u16 x1, u16 y0, u16 y1, u16 color); 
 
 
/**************************************************************************** 
* 名称:GUI_FloodFill() 
* 功能:图形填充,将指定点内的封闭图形进行填充。对指定点的颜色区域进行填充,即不是该颜色 
*      的像素为边界(如,指定点上的颜色为红色,则其它颜色像素均为边界)。 
* 入口参数: x0		指定点的x坐标值 
*           y0		指定点的y坐标值 
*           color	填充颜色 
* 出口参数:无 
* 说明:操作失败原因是指定地址超出有效范围、指定点不在封闭图形内。 
****************************************************************************/ 
extern void  GUI_FloodFill(u16 x0, u16 y0, u16 color); 
 
 
/**************************************************************************** 
* 名称:GUI_Arc4() 
* 功能:画弧。起点及终点只能为0度-90度、90度-180度、180度-270度、270度-0度等。即分别 
*      为第1-4像限的90度弧。 
* 入口参数: x0		圆心的x坐标值 
*           y0		圆心的y坐标值 
*           r       圆弧的半径 
*           angle	画弧的像限(1-4) 
*           color	显示颜色 
* 出口参数:无 
* 说明:操作失败原因是指定地址超出有效范围。 
****************************************************************************/ 
extern void  GUI_Arc4(u16 x, u16 y, u16 r, u8 angle, u16 color); 
 
 
 
/**************************************************************************** 
* 名称:GUI_Arc() 
* 功能:指定起点、终点及半径画弧(不能画圆)。使用的是顺时针方向画图。 
* 入口参数: x			圆心的x坐标值 
*           y			圆心的y坐标值 
*           stangle 	起始角度(0-359度) 
*           endangle	终止角度(0-359度) 
*           r  			圆的半径终点 
*           color		显示颜色 
* 出口参数:无 
* 说明:操作失败原因是指定地址超出有效范围。 
****************************************************************************/ 
extern void  GUI_Arc(u16 x, u16 y, u16 r, u16 stangle, u16 endangle, u16 color); 
 
 
/**************************************************************************** 
* 名称:GUI_Pieslice() 
* 功能:指定起点、终点及半径扇形(不能画圆)。使用的是顺时针方向画图。 
* 入口参数: x			圆心的x轴坐标值 
*           y			圆心的y轴坐标值 
*           stangle 	起始角度(0-359度) 
*           endangle	终止角度(0-359度) 
*           r  			圆的半径终点 
*           color		显示颜色 
* 出口参数:无 
* 说明:操作失败原因是指定地址超出有效范围。 
****************************************************************************/ 
extern void  GUI_Pieslice(u16 x, u16 y, u16 r, u16 stangle, u16 endangle, u16 color); 
 
 
#endif