Python 如何在pybox2d中创建打开的ChainShape

Python 如何在pybox2d中创建打开的ChainShape,python,box2d,Python,Box2d,我试图用pybox2d(版本2.3b0)和Python2.7.5创建OpenChainShape,但它创建了与顶点数组中的第一个相同的额外垂直。 最小代码如下所示 import Box2D a = [Box2D.b2Vec2(1,0), Box2D.b2Vec2(3,2), Box2D.b2Vec2(4,5)] b = Box2D.b2ChainShape(vertices=a) print b b2ChainShape(vertices: [(1.0, 0.0), (3.0, 2.0),

我试图用pybox2d(版本2.3b0)和Python2.7.5创建OpenChainShape,但它创建了与顶点数组中的第一个相同的额外垂直。 最小代码如下所示

import Box2D

a = [Box2D.b2Vec2(1,0), Box2D.b2Vec2(3,2), Box2D.b2Vec2(4,5)]

b = Box2D.b2ChainShape(vertices=a)
print b

b2ChainShape(vertices: [(1.0, 0.0), (3.0, 2.0), (4.0, 5.0), (1.0, 0.0)])
结果与预期不符,与b2LoopShape相同

b = Box2D.b2LoopShape(vertices=a)
print b

b2ChainShape(vertices: [(1.0, 0.0), (3.0, 2.0), (4.0, 5.0), (1.0, 0.0)])

创建开放链形状的正确方法是什么?

我浏览了pybox2d源代码,发现了b2ChainShape的其他属性,即“顶点\u循环”、“顶点\u链”

构造开放链形状的正确方法是

b = Box2D.b2ChainShape(vertices_chain=a)
现在,它的工作如预期