gpt4 book ai didi

python - 改变原点在 PyGame 坐标系中的位置

转载 作者:行者123 更新时间:2023-11-28 20:09:45 46 4
gpt4 key购买 nike

我正在 PyGame 中使用向量和物理进行一些操作,默认坐标系对我来说不方便。通常 (0, 0) 点在左上角,但我希望原点在左下角。我宁愿更改坐标系,也不愿转换我必须绘制的每一件东西。

是否可以更改 PyGame 中的坐标系以使其像这样工作?

最佳答案

不幸的是,pygame 不提供任何此类功能。最简单的方法是拥有一个转换坐标的函数,并在绘制任何对象之前使用它。

def to_pygame(coords, height):
"""Convert coordinates into pygame coordinates (lower-left => top left)."""
return (coords[0], height - coords[1])

这将获取您的坐标并将它们转换为 pygame 的绘图坐标,给定 height,窗口的高度,以及 coords,对象的左上角.

要改为使用对象的左下角,您可以采用上面的公式,并减去对象的高度:

def to_pygame(coords, height, obj_height):
"""Convert an object's coords into pygame coordinates (lower-left of object => top left in pygame coords)."""
return (coords[0], height - coords[1] - obj_height)

关于python - 改变原点在 PyGame 坐标系中的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10167329/

46 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com