2017-10-28 1 views
1

다음은 작동하는 예제입니다. 화면 하단에 빨간색 숫자가로드됩니다. 지금까지 그렇게 좋았지 만 700 (x 축) 및 100 (y 축)과 같은 특정 좌표에 그림을로드하고 싶습니다.get_rect() 또는 Rect()를 사용하여 rect 좌표를 설정하는 방법은 무엇입니까?

import pygame 


class Figure: 

    def __init__(self, screen2): 
     """Initialize the figure and set its starting position.""" 
     self.screen2 = screen2 

     # Load the Red figure image and get its rect. 
     self.redplayer = pygame.image.load('Images/redplayer.bmp') 
     self.rectredplayer = self.redplayer.get_rect() 
     self.screen2_rect = screen2.get_rect() 

     # Start each new redplayer at the bottom center of the screen. 
     self.rectredplayer.centerx = self.screen2_rect.centerx 
     self.rectredplayer.bottom = self.screen2_rect.bottom 

    def blitme(self): 
     """Draw the red player figure at its current location.""" 
     self.screen2.blit(self.redplayer, self.rectredplayer) 

답변

0

이 방법으로 좌상 좌표를 설정 : 다른 rect attributes

self.rectredplayer.center = (700, 100) 

또는 사용 :

self.rectredplayer.x = 700 
self.rectredplayer.y = 100 
# Or just: 
self.rectredplayer.topleft = (700, 100) 

원하는 좌표에 RECT의 중심을 설정하려면

x,y 
top, left, bottom, right 
topleft, bottomleft, topright, bottomright 
midtop, midleft, midbottom, midright 
center, centerx, centery 

코드를 직접 Surface.get_rect에 전달하십시오 :

self.rectredplayer = self.redplayer.get_rect(topleft=(700, 100)) 
관련 문제