GUI_RectsIntersect.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        : GUI_RectsIntersect.C
  18. Purpose     : Implementation of GUI_RectsIntersect
  19. ---------------------------END-OF-HEADER------------------------------
  20. */
  21. #include <stddef.h>           /* needed for definition of NULL */
  22. #include "GUI_Protected.H"
  23. /*******************************************************************
  24. *
  25. *                 Macros
  26. *
  27. ********************************************************************
  28.  Check if rectangle do intersect.
  29.  Returns:
  30.    0 if they do not.
  31.    1 if they do.
  32. */
  33. int GUI_RectsIntersect(const GUI_RECT* pr0, const GUI_RECT* pr1) {
  34.   if (pr0->y0 <= pr1->y1) {
  35.     if (pr1->y0 <= pr0->y1) {
  36.       if (pr0->x0 <= pr1->x1) {
  37.         if (pr1->x0 <= pr0->x1) {
  38.           return 1;
  39.         }
  40.       }
  41.     }
  42.   }
  43.   return 0;
  44. }