한국어 Translate to English (by Google) 日本語に翻訳します (by excite.co.jp)       작성자: Kyuseo의 게임 프로그래밍 이야기 :: http://a.TK.co.kr | 트위터 @kyuseo | 누리게임즈

개요..

 

RECT 구조체를 교집합, 이동, 증가하기 등을 처리할 경우 직접 코드를 작성하여도 좋지만, 이미 제공되는 함수도 쓸만한 것들이 많이 있습니다.

 

 

쓸만한 Rect 관련 API 함수

 

BOOL UnionRect(

LPRECT lprcDst, // destination rectangle
CONST RECT *lprcSrc1, // first rectangle
CONST RECT *lprcSrc2 // second rectangle );

 

두개의 사각형으로 하나의 사각형으로 합한다.

면적이 0이면 FALSE 아니면 TRUE 를 리턴한다.

   

 

BOOL InflateRect(

LPRECT lprc, // rectangle
int dx, // amount to adjust width
int dy // amount to adjust height );

 

dx 만큼 좌측은 빼주고 우측을 더해주어 전체 가로면적을 Width + dx*2 만큼 증가하고

dy 만큼 위쪽은 빼주고 아래쪽을 더해주어 전체 세로면적을 Height + dy*2 만큼 증가한다.

 성공시 TRUE, 실패시 FALSE 을 리턴한다.

 

 

BOOL IntersectRect(

LPRECT lprcDst, // intersection buffer
CONST RECT *lprcSrc1, // first rectangle
CONST RECT *lprcSrc2 // second rectangle );

 

두개의 사각형의 교집합을 구한다.

교집합이 없다면 FALSE 을 있다면 TRUE 을 리턴한다.

   

 

BOOL OffsetRect(

LPRECT lprc, // rectangle
int dx, // horizontal offset
int dy // vertical offset );

 

사각형을 dx, dy 만큼 이동시킨다.

성공시 TRUE, 실패시 FALSE 을 리턴한다.

 

 

 

CRect 에도 비슷한 함수들이 존재합니다.

 

    CRect rc1( 10, 10, 100, 100 );

    CRect rc2( 20, 20, 200, 200 );

 

    CRect rc3;

    rc3.UnionRect( rc1, rc2 );

 

    ASSERT( rc3 == CRect( 10, 10, 200, 200 ) );




qrcode
이 글의 QR 코드입니다.


이 저작물은 비영리, 출처:Kyuseo 프로그래밍 이야기 :: http://a.TK.co.kr 표시하면 스크랩 하실 수 있습니다.

별도로 출처 표시가 되지 않은 저작물은 Kyuseo에게 저작권이 있습니다.   ★──━━ 행복한 하루 되세요 ━━──★

BLOG main image
93년부터 프로그래밍을 독학한 게임 프로그래머 kyuseo의 프로그래밍 정보와 게임 개발 강좌를 주로 다룹니다. kyuseo는 최근 아이폰앱 / 스마트폰 올인원 엔진 개발을 위해 큰 노력을 하고 있습니다. by kyuseo

카테고리

분류 전체보기 (664)
Kyuseo 소개, 잡담 (159)
만든 게임 및 프로그램 (116)
게임, 서적, 문화 소감 (34)
틀린그림찾기 서치아이 (9)
-----------★----------- (5)
컴퓨터 활용 팁, 강좌 (98)
개발자 팁, 강좌 (64)
PHP, DB 팁, 강좌 (0)
C++ 팁, 강좌 (116)
프로그래밍 프로젝트A (1)
프로그래밍 프로젝트B (0)
------------------------♥ (0)
클로버 자동 업데이트 (14)
------------------------♣ (0)
스마트폰, 아이폰 개발 (43)
CK 아이폰 게임 엔진 (2)
피망고 게임 엔진 (0)
전체 : 2,164,211
오늘 : 273 어제 : 858