预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共25页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第6章2-D图形库 µC/GUI包括有一个完整的2-D图形库,在大多数场下应用是足够了。µC/GUI提供的函数既 可以与裁剪区一道使用也可以脱离裁剪区使用(参考第12章“视窗管理器”),这些函数基 于快速及有效率的算法建立。 目前,只有绘制圆弧函数要求浮点运算支持。 µC/GUI中文手册 第6章2-D图形库 6.1API参考:图形 下表列出了与图形处理相关的函数,在各自的类型中按字母顺序进行排列。函数的详细 描述后面列出。 函数说明 绘图模式 GUI_SetDrawMode()设置绘图模式。 基本绘图函数 GUI_ClearRect()使用背景颜色填充一个矩形区域。 GUI_DrawPixel()绘一个单像素点。 GUI_DrawPoint()绘一个点。 GUI_FillRect()绘一个填充的矩形。 GUI_InvertRect()反转一个矩形区域。 绘制位图 GUI_DrawBitmap()绘制一幅位图。 GUI_DrawBitmapExp()绘制一幅位图。 GUI_DrawBitmapMag()绘制一幅放大的位图。 GUI_DrawStreamedBitmap()从一个位图数据流的数据绘制一幅位图。 绘线 GUI_DrawHLine()绘一根水平线。 GUI_DrawLine()绘一根线。 从当前坐标到端点绘一根线,该端点由X轴距 GUI_DrawLineRel() 离及Y轴距离指定。 GUI_DrawLineTo()从当前坐标到端点(X,Y)绘一根线。 GUI_DrawPolyLine()绘折线。 GUI_DrawVLine()绘一根垂直线。 绘多边形 GUI_DrawPolygon()绘一个多边形。 GUI_EnlargePolygon()对一个多边形进行扩边。 GUI_FillPolygon()绘一个填充的多边形。 GUI_MagnifyPolygon()放大一个多边形。 GUI_RotatePolygon()按指定角度旋转一个多边形。 绘圆 GUI_DrawCircle()绘一个圆。 GUI_FillCircle()绘一个填充的圆。 绘椭圆 GUI_DrawEllipse()绘一个椭圆。 GUI_FillEllipse()绘一个填充的椭圆。 µC/GUI中文手册 第6章2-D图形库 绘圆弧 GUI_DrawArc()绘一个圆弧 6.2绘图模式 µC/GUI提供两种绘图模式,NORMAL模式及XOR模式。默认为NORMAL模式,即显示屏的内容 被绘图所完全覆盖。在XOR模式,当绘图覆盖在上面时,显示屏的内容反相显示。 与GUI_DRAWMODE_XOR有关的限制 •XOR模式通常用于在活动视窗或屏幕中使用两种颜色进行显示的场合。 •一些µC/GUI的绘图函数并不能正确地工作在这种模式。通常情况下,这模式只是工 作于一个像素大小的笔尖尺寸。这意味着在使用类似GUI_DrawLine, GUI_DrawCircle,GUI_DrawRect等等这样的函数之前,你必须确定在XOR模式下,笔 尖尺寸已经设为1。 •当使用颜色的深度大于1位/像素(bpp)进行位图绘制,该模式无效。 •当使用诸如GUI_DrawPolyLine这样的函数或多次调用GUI_DrawLineTo函数,转角点 会反相两次。结果是这些像素保持背景颜色。 GUI_SetDrawMode 描述 选择指定的绘图模式 函数原型 GUI_DRAWMODEGUI_SetDrawMode(GUI_DRAWMODEmode); 参数含意 设置的绘图模式。可以是任意设置绘图模式的函数的返回值或 mode 是下表中的任一个。 参数mode允许的数值 GUI_DRAWMODE_NORMAL默认:绘点,线,区域,位图 当在屏幕上另一个物体上用颜色覆盖时对点,线,区 GUI_DRAWMODE_XOR 域进行反相显示 返回值 µC/GUI中文手册 第6章2-D图形库 所选择的绘图模式 附加信息 作为设置绘图模式的附加功能,该函数也可以用于恢复原先被修改的绘图模式。 如果使用颜色,一个反相的像素由下式算出: 新像素颜色=颜色的数值-实际像素颜色-1 范例 //显示两个圆,其中第二个以XOR模式与第一个结合 GUI_Clear(); GUI_SetDrawMode(GUI_DRAWMODE_NORMAL); GUI_FillCircle(120,64,40); GUI_SetDrawMode(GUI_DRAWMODE_XOR); GUI_FillCircle(140,84,40); 上面范例程序运行结果的屏幕截图 6.3基本绘图函数 基本绘图函数允许在显示屏上的任何位置进行单独的点,水平和垂直