|
영역의 모양에 따라 다르겠죠..
좌표계에도 영향을 받고요.
Draw 로 그래는 내용들이 모두 윈도우 좌표계를 쓰는지 아니면
자신의 변환 좌표계를 쓰는지를 따져 봐야 겠지요..
일단
영역 안에 있는지 밖에 있는지를 검사하는 방법은 여러가지가 있습니다.
1.수치계산적인 방법
2. Region 을 만들어 point in region 의 기능을 쓰는 방법
1번이야 해당 객체의 좌표(사각형이면 좌,우,위,아래 좌표가 있겠죠)
x,y 를 사각형 x1,y1 - x2,y2 영역 안이 있는지 밖에 있는지는 검사는 쉽죠.
x 가 x1 보다 작으면(이경우 x1<x2 인 경우 입니다) 밖이고
x 가 x2 보다 크면 밖이죠.
y 가 y1 보다 작으면 밖이고
y 가 y2 보다 크면 밖이죠.
위의 모든경우가 아니면 x,y 는 사각형 (x1,y1)-(x2,y2) 의 내부에 있는 것이죠.. 물론 태두리 포함해서요.
2번은 WindowsAPI 에 CreateRegion 하는 함수가 있습니다.
여기서 만들어지는 Region 에 point x,y 가 있는지 아닌지 검사하는것이 WindowsAPI 에 있습니다.
PointInRegion 인가 뭔가 기억은 잘 않나지만요. Help 로 Windows API 의 Region 관련 찾으시면 바로
찾으실 수 있습니다.
잠스터 님이 쓰신 글 :
: 제목 그대로구요..
: 마우스 다운 이벤트를 받아서 마우스의 X,Y 좌표값이 어느 영역 안에 들어왔는지
: 어떤식으로 확인할 수 있지요?
: 미리 정의된 함수같은건 없는지요..
: 위에 말한 영역이란 Draw 함수로 그린 Rectangle 같은 검니다...
: 읽어주셔서 감사합니다..
|