Canvas 에 원을 그리기 위해서 Ellipse 멤버함수를 사용하는데 이 함수가 사각형에 내접하는 원을 그리는 방식이라 타원이 그려지게 되죠..
그래서 원의 중심점과 반지름 위치의 점을 이용하여 원을 그리는 방식으로 변경하는 코드를 만들어 보았습니다.
void Calcu_Circle_Position(POINT Center, POINT Radius, POINT* StartPos, POINT* EndPos)
{
    int dx, dy, radius ;
    dx = (Radius.x - Center.x) * (Radius.x - Center.x) ;
    dy = (Radius.y - Center.y) * (Radius.y - Center.y) ;
    radius = sqrt((double)(dx+dy)) ;
    StartPos->x = Center.x - radius ;
    StartPos->y = Center.y - radius ;
    EndPos->x   = Center.x + radius ;
    EndPos->y   = Center.y + radius ;
}
함수 사용방법은
POINT Center, Radius, StartPos, EndPos ; /**************** Center : 마우스 첫 클릭 포인트 Radius : 마우스의 두번째 클릭 포인트 *****************/ Calcu_Circle_Position(Center, Radius, &StartPos, &EndPos) ; Canvas->Ellipse(StartPos.x, StartPos.y, EndPos.x, EndPos.y) ;
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 수 | 
|---|---|---|---|---|
| 27 | 시리얼 통신 (COM Port open) | pjk | 2014.11.17 | 8751 | 
| 26 | MFC의 다각형 그리기 | pjk | 2014.05.24 | 17362 | 
| 25 | 메모리 비트맵 | pjk | 2014.05.24 | 5628 | 
| 24 | 
					Visual Studio MFC에서 디버깅용 콘솔 창 띄우기
															 | 																																																												pjk | 2014.05.24 | 9898 | 
| 23 | 쓰레드 동기화 기법 | pjk | 2014.05.24 | 6131 | 
| 22 | 선의 스타일과 색상 및 굵기 지정방법 | pjk | 2014.05.24 | 5696 | 
| 21 | PictureControl 크기 구하기 | pjk | 2014.05.24 | 5478 | 
| 20 | 체크박스가 선택되어 있는지 확인하는 GetCheck() | pjk | 2014.05.24 | 8795 | 
| 19 | DC(Device Context) | pjk | 2014.05.24 | 6255 | 
| 18 | 키보드 입력을 처리하기 | pjk | 2014.05.24 | 6338 | 
| 17 | 양끝이 평평한 pen(펜)의 굵기와 색깔 지정해서 선 그리기 | pjk | 2014.05.26 | 5681 | 
| » | 원의 중심과 반지름을 이용한 원 그리기 | pjk | 2014.05.30 | 8352 | 
| 15 | 
					세 점을 지나는 원 (3 Point Circle)
															 | 																																																												pjk | 2014.06.05 | 13997 | 
| 14 | SetPixel() 을 사용하여 원을 그리기... | pjk | 2014.06.05 | 11843 | 
| 13 | 
					두점을 지나고 반지름을 알고있을 때 원의 중심점을 찾기
															 | 																																																												pjk | 2014.06.09 | 10316 | 
| 12 | MFC 대화상자 종료 메시지 호출 순서 | pjk | 2014.06.19 | 6818 | 
| 11 | FindFirstFile() | pjk | 2014.07.18 | 7058 | 
| 10 | WinCE 디버그메시지 사용법(DEBUGMSG, RETAILMSG, ERRORMSG, NKDbgPrintfW) | pjk | 2014.07.21 | 6760 | 
| 9 | 디렉토리(directory) 접근 C++ Win32 함수 총정리 | pjk | 2014.10.13 | 6583 | 
| 8 | 윈도우 프로그래밍에서의 데이터 형 | pjk | 2014.10.13 | 6699 |