我正在尝试使用pybox2d(版本2.3b0)和python 2.7.5创建开放的ChainShape,但它创建了与顶点数组中的第一个相同的顶点。 最小代码看起来像这样
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)])
创建开链形状的正确方法是什么?
答案 0 :(得分:0)
我浏览了pybox2d源代码,发现b2ChainShape的其他属性是" vertices_loop"," vertices_chain"
构建开放式链式的正确方法是
b = Box2D.b2ChainShape(vertices_chain=a)
现在它按预期工作