1. PtInRect 함수
BOOL PtInRect(const RECT *Iprc, POINT pt);
<함수 원형>
- POINT형 변수가 지정한 RECT안에 존재하는지 검사할 때 사용한다.
- 1번째 인자로 RECT의 주소가 들어간다.
- 2번째 인자로 비교하는 POINT가 들어간다.
RECT tmpRect = { 100,100,300,300 };
POINT tmpPoint;
switch (iMessage)
{
case WM_LBUTTONDOWN:
tmpPoint.x = LOWORD(lParam);
tmpPoint.y = HIWORD(lParam);
if (PtInRect(&tmpRect, tmpPoint))
{
MessageBox(hWnd, "Rect 안에 있다.", "알림", MB_OK);
}
return 0;
}
<예시>
2. IntersectRect 함수
BOOL IntersectRect(RECT* rcTemp, RECT* RECT1, RECT* RECT2);
<함수 원형>
- 두 개의 사각형이 겹치는 교집합 부분이 있는지 체크한다.
- 교집합이 존재하면 TRUE를 반환한다.
- 1번째 인자로 교집합을 저장할 RECT의 주소가 들어간다.
- 2, 3번째 인자로 교집합을 구할 RECT의 주소가 들어간다.
// 교집합 Rect
RECT tmpRect;
// 승리
if (IntersectRect(&tmpRect, &(m_Player->GetCollision()), &(m_End->GetCollision())))
{
if (!m_bWin)
{
m_StartExitTimer = GetTickCount();
}
m_bWin = true;
}
<예시>
'Study > API' 카테고리의 다른 글
[API] Error LNK2019, LNK1120 - main 외부 기호에서 확인하지 못했습니다, 1개의 확인할 수 없는 외부 참조입니다. (0) | 2020.03.26 |
---|---|
[API] Error C2664, E0167 - DLGPROC형식의 변환 (3) | 2020.03.24 |
[API] 리소스 뷰 오류 - 다른 편집기에서 열려 있습니다. (0) | 2020.03.12 |