首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Pygame blit区域参数?

Pygame blit区域参数?
EN

Stack Overflow用户
提问于 2017-12-21 21:37:02
回答 1查看 3.2K关注 0票数 3

我目前正在尝试重新绘制一个已经绘制的图像的一部分。在我看来,在使用blit时,可以使用可选的第三个区域参数。我不知道为什么,但是这个参数对我来说很奇怪。

据我所知,面积参数是(pos_x,pos_y,width,height)。

我的屏幕是1280x1024,所以如果我想让我想要重画的部分从中心开始,我会传递类似(640,512,200,200)的东西,图像的200x200部分应该从中心开始绘制。

然而,对于我来说,图像总是在左上角绘制的,并且area参数中的前两个数字改变了正在绘制的部分的亮度。

我的代码:

代码语言:javascript
复制
image = pygame.image.load("image.jpg")
image = pygame.transform.scale(image, (self.display.get_width(), self.display.get_height()))
self.display.blit(image, (0,0))
# Drawing something here which has to be overwritten, but cannot redraw everything.
self.display.blit(image, (0,0), (640,512,200,200))

第二个blit只是在屏幕左上角绘制了一张200x200的图像,比第一次绘制的图像更亮。

亲切的问候

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-21 22:12:00

您将传递(0, 0)作为blit目标(第二个参数),因此您的图面显示在显示的左上角。如果你想在其他地方绘制它,例如在(200, 300),你必须传递这些坐标作为第二个参数:

代码语言:javascript
复制
self.display.blit(image, (200, 300), (640,512,200,200))
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47926159

复制
相关文章

相似问题

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