如何在 pymunk 中制作静态矩形?

How to make a Static Rectangle shape in pymunk?

我的问题很简单,我只想知道一种制作静态主体的方法,它是使用 pymunk 的矩形。我尝试阅读文档并了解了 Segments,但无法真正理解它。所以非常感谢任何形式的帮助!

您可以使用已经附加到 Space 的静态主体,或者创建一个新的。要创建矩形,您可以将角提供给 Poly 构造函数(如下所示),或者使用 shorthand Poly.create_box 方法。

space = pymunk.Space()
rectangle = pymunk.Poly(space.static_body, [(10,10),(20,10),(20,15),(10,15)])
space.add(rectangle)

请注意,静态物体在添加到 space 后不应移动。所以如果需要移动矩形,可以使用kinematic body代替。

viblo 的方法有效。还有这个

def create_rectangle_static(space,pos_x,pos_y,width,height):

    body = pymunk.Body(body_type=pymunk.Body.STATIC)
    
    body.position = (pos_x,pos_y)
    shape = pymunk.Poly.create_box(body,(width,height))
    space.add(body,shape)