2014-01-23 4 views
-1

저는 현재 python 2.7.5 및 pygame을 사용하여 페인트 프로그램을 만들고 있습니다. 타원 도구에 오류가 발생하여 클래스 메이트에 도움을 요청했으며 그는 .normalize()가 누락되었다고 말했습니다. 내가 그것을 추가하고 내 도구가 수정되었습니다. 나는 현재 그 기능이 무엇인지 궁금해하고 있습니다. "파이 게임 사각형 정규화"를 검색하는Python에서 정규화 함수

 if mb[0] == 1 and canvas.collidepoint(mx,my): 
     screen.set_clip(canvas) 
     if tool == "ellipse": 
      screen.blit(copy,(0,0)) 
      radius = Rect(startx,starty,mx-startx,my-starty) #Area Ellipse is being drawn 
      radius.normalize() 
     if radius.height<sz2*2 or radius.width<sz2*2: 
      draw.ellipse(screen,(c),(radius)) 
     else: 
      draw.ellipse(screen,(c),(radius), sz2) 
     screen.set_clip(None) 
+1

문서 읽기 : http://www.pygame.org/docs/ref/rect.html#pygame.Rect.normalize – jonrsharpe

+3

이 질문은 단지 기능에 대한 설명서를 요구하기 때문에 주제가 아닌 것처럼 보입니다. 합리적인 답변은 [이 링크] (http://www.pygame.org/docs/ref/rect.html#pygame.Rect.normalize) 일뿐입니다. – abarnert

답변

3

첫 번째 결과 :

PyGame Rect Docs

normalize() 
correct negative sizes 
normalize() -> None 

이 그 경우 직사각형의 폭 또는 높이 플립 것이다 여기가에서 사용되는 코드는 음수 크기입니다. 직사각형은 양쪽을 바꿔서 같은 위치에 유지됩니다.

본질적으로 너비와 높이가 음수가 아닌 양수임을 보장합니다.

+0

감사합니다. 나는 분명히 옳은 것을 인터넷으로 검색하지 못했습니다. – user2950875