如何在pygame中将常规图像更改为Rect

时间:2013-09-17 07:56:43

标签: python python-2.7 pygame rect

我需要最简单的方法来使图像成为一个Rect,是否有一个函数或者我是否需要从一开始就使它成为一个Rect?我有一个脚本是玩家四处走动,但我希望角色的图像是一个Rect,所以我可以用它做更多。

1 个答案:

答案 0 :(得分:0)

我希望角色的形象是一个矩形没有多大意义,但你可能正在寻找get_rectSurface方法} class:

  

<强> get_rect()
  获取Surface 的矩形区域   get_rect(**kwargs) -> Rect
  返回覆盖整个曲面的新矩形。此矩形始终从0开始,宽度为0。和高度与图像相同......

(我猜常规图片你的意思是Surface,因为Surface是pygame代表图片的方式)

请注意,此函数返回的Rect始终以00开头。如果您已经以某种方式跟踪对象的位置(例如xy变量),您可以

  • 删除这些变量,只使用Rect来跟踪对象的位置。如果您移动对象,而不是更改xy变量(例如x += mx / y += my),则只需更新Rect(例如{ {1}}其中pos.move_ip(mx, my)pos)。

  • 每当您需要Rect时创建一个新Rect,并确保使用命名参数指向正确的位置(例如Rect

    < / LI>
  • 使用Sprite,它基本上是your_surface.get_rect(x=x, y=y)Surface的组合。