¿øÇü |
BOOL ArcTo( HDC hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect, int nXRadial1, int nYRadial1, int nXRadial2, int nYRadial2 ); |
MFC ¿øÇü |
BOOL CDC::ArcTo( int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4 ); BOOL CDC::ArcTo( LPCRECT lpRect, POINT ptStart, POINT ptEnd ); |
Àμö |
¢ºhdc : DCÀÇ ÇÚµé ¢ºnLeftRect, TopRect, nRightRect, nBottomRect : ¿ÜÁ¢ »ç°¢ÇüÀÇ ¿µ¿ª ¢ºnXStartArc, nYStartArc : ½ÃÀÛÁ¡ÀÇ ÁÂÇ¥ ¢ºnXEndArc, nYEndArc : ³¡Á¡ÀÇ ÁÂÇ¥ |
¸®ÅÏ |
¼º°øÇϸé 0ÀÌ ¾Æ´Ñ °ª(TRUE)À» ¸®ÅÏÇÏ°í ½ÇÆÐÇϸé 0À» ¸®ÅÏÇÑ´Ù. |
¼³¸í |
¿øÁÖ»óÀÇ ÀϺκÐÀÎ ¿øÈ£, Áï ¿øÁÖÀÇ ÀϺκп¡ ÇØ´çÇÏ´Â °î¼± ºÎºÐÀ» ±×¸°´Ù. ÀÌ ÇÔ¼ö´Â ¿ÜÁ¢ »ç°¢ÇüÀ¸·Î ±×¸®°íÀÚ ÇÏ´Â ¿øÈ£ÀÇ Å©±â¸¦ ÁöÁ¤ÇÏ¸ç ½ÃÀÛÁ¡°ú ³¡Á¡À¸·Î ¿øÈ£ÀÇ ¿µ¿ªÀ» ÁöÁ¤ÇÑ´Ù. ¿øÈ£ÀÇ ÁÂÇ¥¸¦ ÁöÁ¤ÇÏ´Â ¹æ½ÄÀº Arc ÇÔ¼ö¿Í µ¿ÀÏÇϹǷΠÀμöÀÇ ÀÚ¼¼ÇÑ Àǹ̿¡ ´ëÇؼ´Â Arc ÇÔ¼ö¸¦ ÂüÁ¶Çϱ⠹ٶõ´Ù. ÀÌ ÇÔ¼ö¿Í Arc ÇÔ¼öÀÇ Â÷ÀÌÁ¡Àº ÇöÀç CP¿¡¼ ½ÃÀÛÁ¡±îÁö ¼±À» ±ß°í ¿øÈ£¸¦ ±×¸° ÈÄ CP¸¦ ¿øÈ£ÀÇ ³¡Á¡À¸·Î ¿Å°Ü ³õ´Â´Ù´Â Á¡ÀÌ ´Ù¸£´Ù. µû¶ó¼ ÀÌ ÇÔ¼ö¸¦ »ç¿ëÇÏ¸é ½ÇÁ¦·Î ±×·ÁÁø ¿øÈ£ÀÇ ³¡Á¡(½ÃÀÛ ¼±ºÐ, ³¡ ¼±ºÐ°ú ¿øÈ£ÀÇ ±³Á¡)ÁÂÇ¥·ÎºÎÅÍ ´Ù¸¥ ±×¸®±â¸¦ °è¼ÓÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½ ¿¹Á¦´Â ¿øÈ£ÀÇ Áß½ÉÁ¡°ú ½ÃÀÛÁ¡À» ¼±ºÐÀ¸·Î ¿¬°áÇÏ°í ³¡Á¡¿¡¼ºÎÅÍ ¿À¸¥ÂÊÀ¸·Î ¼±ºÐÀ» Çϳª ´õ ±×¸°´Ù. LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam) { HDC hdc; PAINTSTRUCT ps; switch(iMessage) { case WM_PAINT: hdc=BeginPaint(hWnd, &ps); MoveToEx(hdc,(200-10)/2,(180-10)/2,NULL); ArcTo(hdc,10,10,200,180,200,180,200,10); LineTo(hdc,300,30); EndPaint(hWnd, &ps); return 0; case WM_DESTROY: PostQuitMessage(0); return 0; } return(DefWindowProc(hWnd,iMessage,wParam,lParam)); } ArcTo ÇÔ¼ö·Î ¿øÈ£¸¦ ±×¸®±â Àü¿¡ MoveToEx·Î CP¸¦ ¿øÈ£ÀÇ Áß½ÉÀ¸·Î À̵¿½ÃÄÑ ³õÀ¸¹Ç·Î ¿øÈ£ÀÇ Á߽ɰú ½ÃÀÛÁ¡ÀÌ ¿¬°áµÇ¸ç ArcTo·Î ¿øÈ£¸¦ ±×¸° ÈÄ LineTo ÇÔ¼ö·Î ¿øÈ£¿¡¼ À̾îÁö´Â ¼±ºÐÀ» ´õ ±×¸± ¼ö°¡ ÀÖ´Ù. |
Âü°íÇÔ¼ö |
Arc : ¿øÈ£¸¦ ±×¸®µÇ CP¸¦ À̵¿½ÃÅ°Áö´Â ¾Ê´Â´Ù. SetArcDirection : ¿øÈ£ÀÇ ¹æÇâÀ» ¼³Á¤ÇÑ´Ù. |
Ç÷§Æû |
NT ÀÌ»ó, 95/98¿¡¼´Â Áö¿øÇÏÁö ¾Ê´Â´Ù. |
ÂüÁ¶ |
|
written by http://www.winapi.co.kr
|