[]分享贝塞尔曲线运动
Laya.timer.frameLoop(1, this, this.move, [0.0003])//主控制 0.0003自己调整
private testSp:Laya.Sprite;//移动物体
private counts=0;
//移动 自己做条件判断停止frameLoop
private move(arg) {
var t = arg * this.counts
var point = this.bezier(t, stX, stY, kzX, kxY, endX, endY);
this.testSp= point.x
this.testSp= point.y;
this.counts +=10;
}
//t->(0,1) stx:起始位置 kongzhiX:拉力点 endX :终点
private bezier(t: number, stx: number = 0, stY: number = 0, kongzhiX: number, kongzhiY: number, endX: number, endY: number): any {
var tem = 1 - t;
var tx = tem * tem * stx + 2 * t * tem * kongzhiX + t * t * endX
var ty = tem * tem * stY + 2 * t * tem * kongzhiY + t * t * endY
return { x: tx, y: ty };//返回坐标位置
}
谢谢分享!
谢谢分享!
获取的xy怎么是无限增长的啊。
稍微修改下就可以了,非常感谢。
要回复问题请先登录