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

uCOS

开发平台:

C/C++

  1. /*********************************************************************
  2. *                SEGGER MICROCONTROLLER SYSTEME GmbH                 *
  3. *        Solutions for real time microcontroller applications        *
  4. **********************************************************************
  5. *                                                                    *
  6. *        (c) 2002         SEGGER Microcontroller Systeme GmbH        *
  7. *                                                                    *
  8. *        Internet: www.segger.com    Support:  support@segger.com    *
  9. *                                                                    *
  10. **********************************************************************
  11. **** emWin/GSC Grafical user interface for embedded applications ****
  12. emWin is protected by international copyright laws. Knowledge of the
  13. source code may not be used to write a similar product. This file may
  14. only be used in accordance with a license and should not be re-
  15. distributed in any way. We appreciate your understanding and fairness.
  16. ----------------------------------------------------------------------
  17. File        : LCDGetP.c
  18. Purpose     : Get Pixel routines
  19.               Note: These routines are in a module of their own
  20.                     because they are mostly not required to link
  21. ---------------------------END-OF-HEADER------------------------------
  22. */
  23. #include <stddef.h>           /* needed for definition of NULL */
  24. #include "GUI_Private.h"
  25. #include "GUIDebug.h"
  26. /*********************************************************************
  27. *
  28. *           LCD_GetPixelIndex
  29. *
  30. **********************************************************************
  31. Note: We can not use the standard clipping which we use for drawing
  32. operations as it is perfectly legal to read pixels outside of
  33. the clipping area. We therefor get the bounding rectangle of the
  34. device and use it for clipping.
  35. */
  36. unsigned LCD_GetPixelIndex(int x, int y)  {
  37.   LCD_RECT r;  
  38.   LCDDEV_L0_GetRect(&r);
  39.   if (x < r.x0)
  40.     return 0;
  41.   if (x > r.x1)
  42.     return 0;
  43.   if (y < r.y0)
  44.     return 0;
  45.   if (y > r.y1)
  46.     return 0;
  47.   return LCDDEV_L0_GetPixelIndex(x,y);
  48. }