gpt4 book ai didi

python - 如何使用重力使 pymunk 对象聚集到中心点?

转载 作者:行者123 更新时间:2023-12-04 07:15:52 24 4
gpt4 key购买 nike

在 Pymunk 中,您可以设置重力以使对象向左或向右 (x) 和向上或向下移动。 (y)
我想改变重力,使物体聚集在中心,有点像质心。有没有可能的方法来做到这一点?

最佳答案

没有内置的方法来“移动”重力。相反,您必须手动完成,例如为每个物体计算重力方向(和大小),然后将其作为每个模拟步骤的力应用。
一种方法是创建一个自定义速度函数,您可以在所有希望受重力影响的对象上设置该函数。它记录在这里:http://www.pymunk.org/en/latest/pymunk.html#pymunk.Body.velocity_func

def custom_gravity_velocity(body, gravity, damping, dt):
g = ... code to calculate the gravity you want
# Call the default velocity function with the new gravity
pymunk.Body.update_velocity(body, g, damping, dt)

body.velocity_func = custom_gravity_velocity
我在这里向 Pymunk github 添加了一个完整示例:
https://github.com/viblo/pymunk/blob/master/examples/planet.py

关于python - 如何使用重力使 pymunk 对象聚集到中心点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68772408/

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