首页 > 代码库 > P2.JS之线性弹簧(LinearSpring)备忘

P2.JS之线性弹簧(LinearSpring)备忘

先上段关键代码:
1 var s1 = new p2.LinearSpring(holderBody, circleBody, {2     localAnchorA: [0, 0],3     localAnchorB: [0, 0],4     stiffness: 100,5     damping: 1,6     restLength: 1.57 });8 world.addSpring(s1);

 

效果图:
技术分享
 
这里localAnchorA, localAnchorB的概念仍旧是相对于各自物体内的坐标,当为[0,0]的时候,代表本物体中心点。缺省情况下,这个坐标为物体中心。此坐标即表示弹簧的一端钩在物体的什么位置上。
 
stiffness代表弹簧的强度。缺省情况下,为100。把stiffness:1000看下效果,再拉动球,会发现球来回变得很快了,即意味着弹簧的强度更高了。
 
damping,即弹簧的阻力。缺省情况下,为1。当把弹簧拉伸了之后,弹簧进行收缩动作所要受到的阻力,就由这个属性控制。
 
restLength,字面理解,即弹簧放松时的自然伸展长度。Default is the current distance between the world anchor points,默认的长度为两锚点之间的距离。
 
练习的源码地址:https://gist.github.com/yxzblue/3a66babfb93b889f0833#file-linearspring-html
 
p2.js v0.6.0 的压缩包,链接:http://pan.baidu.com/s/1mgsW7xA 密码:bj85
p2.js 的Github地址:https://github.com/schteppe/p2.js

P2.JS之线性弹簧(LinearSpring)备忘