Box2DWeb b2EdgeShape

Как сделать b2EdgeShape? Создание простого b2EdgeShape. Простой шаблон b2EdgeShape для построения поверх него.

Мой код:

var bodyDef = new Box2D.Dynamics.b2BodyDef;
bodyDef.type = Box2D.Dynamics.b2Body.b2_staticBody;
bodyDef.position.SetV(new Box2D.Common.Math.b2Vec2(250/30, 250/30));

var fixtureDef = new Box2D.Dynamics.b2FixtureDef;
fixtureDef.shape = new Box2D.Collision.Shapes.b2EdgeShape(
  new Box2D.Common.Math.b2Vec2(2.5,0), 
  new Box2D.Common.Math.b2Vec2(2.5,2.5));

fixtureDef.density = 0;
fixtureDef.restitution = 0.0;
fixtureDef.friction = 0.0;

var body = world.CreateBody(bodyDef);
var fixture = body.CreateFixture(fixtureDef);

person L2L2L    schedule 13.10.2014    source источник


Ответы (1)


Пока нет возможности использовать b2EdgeShape. Он не полностью реализован в box2dweb.

Вместо b2EdgeShape вы можете использовать b2PolygonShape следующим образом:

fixDef.shape = new b2PolygonShape()
fixDef.shape.SetAsEdge(new b2Vec2(x1, y1), new b2Vec2(x2, y2))
person Podgorskiy    schedule 14.07.2015
comment
Спасибо за ваш ответ @Podgorskiy. Если вы можете добавить это в codepen или js, это будет здорово. - person L2L2L; 15.07.2015