Box2DWeb Demo
by Scott Vandervort
HTML
<html>
<head>
<title>Box2dWeb Demo</title>
</head>
<body onload="init();">
<canvas id="canvas" width="600" height="400" style="background-color:#333333;" ></canvas>
</body>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/[email protected]/box2d.js"></script>
<script type="text/javascript">
function init() {
var b2Vec2 = Box2D.Common.Math.b2Vec2,
b2AABB = Box2D.Collision.b2AABB,
b2BodyDef = Box2D.Dynamics.b2BodyDef,
b2Body = Box2D.Dynamics.b2Body,
b2FixtureDef = Box2D.Dynamics.b2FixtureDef,
b2Fixture = Box2D.Dynamics.b2Fixture,
b2World = Box2D.Dynamics.b2World,
b2MassData = Box2D.Collision.Shapes.b2MassData,
b2PolygonShape = Box2D.Collision.Shapes.b2PolygonShape,
b2CircleShape = Box2D.Collision.Shapes.b2CircleShape,
b2DebugDraw = Box2D.Dynamics.b2DebugDraw,
b2MouseJointDef = Box2D.Dynamics.Joints.b2MouseJointDef,
b2RevoluteJointDef = Box2D.Dynamics.Joints.b2RevoluteJointDef;
var world = new b2World( new b2Vec2(0, 0), true );
// "Pivot".
var pivotFixDef = new b2FixtureDef;
pivotFixDef.density = 1.0;
pivotFixDef.friction = 0.5;
pivotFixDef.restitution = 0.2;
pivotFixDef.shape = new b2PolygonShape;
pivotFixDef.shape.SetAsBox(.2, .2);
var pivotBodyDef = new b2BodyDef;
pivotBodyDef.type = b2Body.b2_staticBody;
pivotBodyDef.position.Set(10,10 );
var pivotBody = world.CreateBody(pivotBodyDef);
pivotBody.CreateFixture(pivotFixDef);
// "Wheel".
var wheelFixDef = new b2FixtureDef;
wheelFixDef.density = 1.0;
wheelFixDef.friction = 0.5;
wheelFixDef.restitution = 0.2;
wheelFixDef.shape = new b2PolygonShape;
wheelFixDef.shape.SetAsBox(1, 1); ...