0
点赞
收藏
分享

微信扫一扫

学习三阶贝赛尔曲线js

拾光的Shelly 2023-03-16 阅读 37


var time={t:0};

var tween=new TWEEN.Tween(time).to({t:1},1000)....这样就可以更新t了 这个还能修改t变化的速率 

然后在update里面调用修改位置的这个函数 

翻译的三阶贝赛尔的公式



var move=function(obj,t)
{
var p0=obj.position;
var p1={x:10,y:2500,z:0};
var p2={x:100,y:2500,z:800};
var p3={x:1500,y:1500,z:1500};
//
var v1=Math.pow(1-t,3);
p0.x*=v1;
p0.y*=v1;
p0.z*=v1;
var v2=3*t*Math.pow(1-t,2);
p1.x*=v2;
p1.y*=v2;
p1.z*=v2;
var v3=3*t*t*(1-t);
p2.x*=v3;
p2.y*=v3;
p2.z*=v3;

p3.x*=t*t*t;
p3.y*=t*t*t;
p3.z*=t*t*t;
//
console.log(p0.x+p1.x+p2.x+p3.x,p0.y+p1.y+p2.y+p3.y,p0.z+p1.z+p2.z+p3.z);
obj的新坐标就是log这个东西
}

 

完整公式是

举报

相关推荐

three.js 贝塞尔曲线

曲线拟合-贝塞尔曲线

0 条评论