Pygame就地方法

时间:2016-03-31 13:57:04

标签: python python-2.7 pygame

in_place函数与非ip函数有什么区别?为什么它们存在? 应该何时使用move()inflate()以及何时使用move_ip()inflate_ip()

1 个答案:

答案 0 :(得分:4)

到位功能正常,到位;它们会更改您调用它们的Rect,而非就地函数会返回Rect类的新实例以及相应的更改。

您可以在实际想要更改Rect的任何时候使用它们,例如你有一个Sprite并希望移动它,你可以使用

s = SomeSpriteClass()
s.rect.move_ip(100, 0)

而不是

s = SomeSpriteClass()
s.rect = s.rect.move(100, 0)

Sprite 100像素向右移动。

当您不想实际更改Rect时,您可以使用非就地功能,例如当你只想做一些计算时,比如实现相机功能。