写在前面
Composites.newtonsCradle()为内置函数,可以生产牛顿摆。
1.构造牛顿摆
var newtonC=Composites.newtonsCradle(600,100,7,50,500);
参数分析。前两个参数为第一个摆的悬挂点的横纵坐标值,7为摆球数量,50为摆球半径,500为悬挂绳的长度。
2.添加鼠标控制
var mouseConstraint=MouseConstraint.create(engine,{});
3.最终效果
4.代码全文
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>test</title>
<script src="../build/matter.js"></script>
<script src="../demo/lib/jquery-1.11.0.min.js"></script>
<style>
body{
margin:0;
overflow: hidden;
}
</style>
</head>
<body>
<script>
var Engine=Matter.Engine,
Render=Matter.Render,
World=Matter.World,
Bodies=Matter.Bodies,
Composites=Matter.Composites,
MouseConstraint=Matter.MouseConstraint;
var engine=Engine.create(),
world=engine.world,
render=Render.create({
engine:engine,
element:document.body,
options:{
width:$(window).width(),
height:$(window).height(),
wireframes:false
}
});
Engine.run(engine);
Render.run(render);
var newtonC=Composites.newtonsCradle(600,100,7,50,500);
var mouseConstraint=MouseConstraint.create(engine,{});
World.add(world,[newtonC,mouseConstraint]);
</script>
</body>
</html>