GUIAAPolyOut.c
上传用户:zbk8730
上传日期:2017-08-10
资源大小:12168k
文件大小:1k
源码类别:

uCOS

开发平台:

C/C++

  1. /*
  2. *********************************************************************************************************
  3. *                                                uC/GUI
  4. *                        Universal graphic software for embedded applications
  5. *
  6. *                       (c) Copyright 2002, Micrium Inc., Weston, FL
  7. *                       (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
  8. *
  9. *              礐/GUI is protected by international copyright laws. Knowledge of the
  10. *              source code may not be used to write a similar product. This file may
  11. *              only be used in accordance with a license and should not be redistributed
  12. *              in any way. We appreciate your understanding and fairness.
  13. *
  14. ----------------------------------------------------------------------
  15. File        : GUIPolyOutAA.C
  16. Purpose     : Draw Polygon outline routines with Antialiasing
  17. ---------------------------END-OF-HEADER------------------------------
  18. */
  19. #include <stdio.h>
  20. #include <string.h>
  21. #include "GUI.H"
  22. void GUI_AA_DrawPolyOutline(const GUI_POINT* pSrc, int NumPoints, int Thickness, int x, int y) {
  23.   U8 PrevDraw;
  24.   GUI_POINT aiTemp[10];
  25.   GUI_EnlargePolygon(&aiTemp[0], pSrc, NumPoints, Thickness);
  26.   GUI_AA_FillPolygon( &aiTemp[0], NumPoints, x, y );
  27.   PrevDraw = LCD_SetDrawMode(GUI_DRAWMODE_REV);
  28. /* Copy points due to const qualifier */
  29.   memcpy(aiTemp, pSrc, NumPoints*2*sizeof(GUI_POINT));
  30.   GUI_AA_FillPolygon( aiTemp, NumPoints, x, y );
  31.   LCD_SetDrawMode(PrevDraw);
  32. }