绕任意轴旋转
let startRotate = this.cube.rotation.clone();
let axis = this.cube
.getComponent(cc.UITransform)
.convertToWorldSpaceAR(cc.v3(0, 1, 0))
.subtract(this.cube.worldPosition)
.normalize();
let quat = cc.quat();
cc.Quat.rotateAround(
quat,
startRotate,
axis,
cc.misc.degreesToRadians(angle)
);
this.cube.rotation = quat;
- this.cube: 旋转对象
- axis: 旋转轴,示例为对象的 cc.v3(0, 1, 0) 到对象位置的方向向量
- angle: 旋转角度
示例代码效果为从起始角度(startRotate)绕 axis 轴旋转角度 angle 后输出到 quat
本文来自博客园,作者:Muzzik,转载请注明原文链接:https://www.cnblogs.com/muzzik/p/17531710.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步