반응형
윈도우 API에서 제공하는 RECT는 구조체이다. 멤버로는 left, top, right, bottom 밖에 없다.
단순 사각형을 그리거나 위치 계산을 위한 구조체로 이용해 왔다.
RECT구조체와 비슷하게 MFC에서 제공하는 CRect 클래스가 있다.
RECT와 CRect 둘다 마찬가지로 사각형 영역의 위치를 처리하기 위한 타입이다.
CRect에 좀 더 다양하고 편리한 함수가 제공된다.
예를 들어 위 두 사각형이 겹치는 영역을 구할때 사용하면 편리한 함수가 바로 IntersectRect이다.
CRect overlapRect = CRect(0, 0, 0, 0);
overlapRect.IntersectRect(rect1, rect2);
if (overlapRect.IsRectEmpty() || overlapRect.IsRectNull())
//Do not overlap
중첩된 영역을 지정할 overlapRect를 선언후 IntersectRect 함수를 통해 rect1과 rect2를 피라메터로 넘겨주면
겹치는 영역이 overlapRect에 저장된다.
이후 IsRectEmpty() 나 .IsRectNull()로 겹치지 않았을 때 처리를 해주고 겹쳐진 영역을 이용하면 된다.
'Programming' 카테고리의 다른 글
[C++, STL] 범위기반 반복문으로 Iterator 쉽게 사용하기 (0) | 2019.04.16 |
---|---|
[C#] 로또 번호 생성 코드 (Random, List) (0) | 2019.04.12 |
Visual Assist X 10.9 (0) | 2019.04.07 |
Visual Studio 최근 열어본 프로젝트 / 파일 항목 삭제 (0) | 2019.04.02 |
[C++] 로또 번호 생성 코드 (rand, list) (0) | 2019.03.29 |