我在运行Debian Wheezy 7.0的Raspberry Pi上使用Pymunk 3.0.0。 当我尝试使用'pymunk.Segment'函数创建一个形状时,我最终只得到多边形的第一行。在Flipper和BouncingBalls演示中也是如此,所以我很确定这不是我的代码。
例如......
static_body = pymunk.Body()
static_lines = [pymunk.Segment(static_body, (150, 100.0), (50.0, 550.0),3.0)
,pymunk.Segment(static_body, (450.0, 100.0), (550.0, 550.0), 3.0)
,pymunk.Segment(static_body, (50.0, 550.0), (300.0, 600.0), 3.0)
,pymunk.Segment(static_body, (300.0, 600.0), (550.0, 550.0), 3.0)
,pymunk.Segment(static_body, (300.0, 420.0), (400.0, 400.0), 3.0)
]
for line in static_lines:
line.elasticity = 0.7
line.group = 1
space.add(static_lines)
...只会创建从150,100到50,550的行而不是其他4行。
当我尝试使用PyGame绘制线条时,第一条线被绘制好了,但其余的只是在身体位置处的一条很短的细线。
正如在例子中发生的那样,我假设它是Pymunk / Chipmunk / Linux的一个错误但在Google上找不到任何东西。
任何帮助非常感谢(noob btw)
戴夫。
答案 0 :(得分:0)
较早版本的pymunk可能希望将每个新的主体或形状添加为space.add()
的不同参数。
因此,请尝试将space.add(static_lines)
更改为space.add(*static_lines)
。