首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python pygame.transform.rotate

Python pygame.transform.rotate
EN

Stack Overflow用户
提问于 2011-11-16 10:23:18
回答 2查看 1.7K关注 0票数 2

我对pygame和python本身是个新手。但现在,我必须做一个旋转。它应该在随机时间停止。我想的是我可以拥有random.randint(0,360)。所以我可以让它在任意时间停止。但现在,我只能让它旋转90度,否则它就会从屏幕上移动。

任何帮助都是有用的。

谢谢

代码语言:javascript
复制
import sys, pygame, time

pygame.init()

screen = pygame.display.set_mode([600,600])
black = 255,255,0
ball = pygame.image.load("wheel.gif")
temp = pygame.image.load("wheel.gif")


ballrec = ball.get_rect().center

while 1:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            sys.exit()
    screen.fill(black)
    ball = pygame.transform.rotate(ball, 45)
    ballrec = ball.get_rect().center
    screen.blit(ball, ballrec)
    pygame.display.flip()
    time.sleep(1)
EN

回答 2

Stack Overflow用户

发布于 2011-11-16 13:27:54

我注意到,如果你像在ball = pygame.transform.rotate(ball, 45)中那样反复旋转旋转的对象,精灵就会变形并开始移出屏幕。我通常保留原始图像,当我旋转360度时切换回原来的图像。

票数 1
EN

Stack Overflow用户

发布于 2011-11-16 13:16:16

正如here所指出的,旋转不能被90整除的角度需要对图像进行填充。您应该能够只将图像blit始终位于128,128的中心,或者您可以根据需要修剪图像的边缘。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8145864

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档