?? gui__intersectrects.c
字號:
/*********************************************************************
* SEGGER MICROCONTROLLER SYSTEME GmbH *
* Solutions for real time microcontroller applications *
**********************************************************************
* *
* (c) 2002 SEGGER Microcontroller Systeme GmbH *
* *
* Internet: www.segger.com Support: support@segger.com *
* *
**********************************************************************
**** emWin/GSC Grafical user interface for embedded applications ****
emWin is protected by international copyright laws. Knowledge of the
source code may not be used to write a similar product. This file may
only be used in accordance with a license and should not be re-
distributed in any way. We appreciate your understanding and fairness.
----------------------------------------------------------------------
File : GUI_IntersectRects.c
Purpose : Implementation of GUI_IntersectRects
---------------------------END-OF-HEADER------------------------------
*/
#include "GUI_Protected.h"
/*********************************************************************
*
* Macros
*
********************************************************************
*/
#define MIN(v0,v1) ((v0>v1) ? v1 : v0)
#define MAX(v0,v1) ((v0>v1) ? v0 : v1)
/*********************************************************************
*
* GUI__IntersectRects
*
**********************************************************************
Purpose:
Calc intersection of rectangles
Return value:
1 if they do intersect,
0 if there is no intersection
Add. info:
Rectangles are passed as pointers. These pointers need to be valid;
a NULL pointer may not be passed. There is no check for NULL pointers
implemented in order to avoid avoid performance penalty.
*/
int GUI__IntersectRects(GUI_RECT* pDest, const GUI_RECT* pr0, const GUI_RECT* pr1) {
pDest->x0 = MAX (pr0->x0, pr1->x0);
pDest->y0 = MAX (pr0->y0, pr1->y0);
pDest->x1 = MIN (pr0->x1, pr1->x1);
pDest->y1 = MIN (pr0->y1, pr1->y1);
if (pDest->x1 < pDest->x0)
return 0;
if (pDest->y1 < pDest->y0)
return 0;
return 1;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -