gpt4 book ai didi

javascript - 确保值环绕 360 度时正确插值

转载 作者:行者123 更新时间:2023-12-02 23:27:42 25 4
gpt4 key购买 nike

我有以下 Lerp 函数

  public static headingPitchRollLerp(v1: HeadingPitchRoll, v2: HeadingPitchRoll, t: number): HeadingPitchRoll {
Math.min(Math.max(t, 0), 1);
const result = new Cesium.HeadingPitchRoll();
result.heading = v1.heading + (v2.heading - v1.heading) * t;
result.pitch = v1.pitch + (v2.pitch - v1.pitch) * t;
result.roll = v1.roll + (v2.roll - v1.roll) * t;
return result;
}

当旋转不超过或低于 360' 时,效果很好。

但是,例如,我的航向为 350',而我的 v2 的航向为 10',而不是从 350' 到 10'(仅 20'),我的代码向后移动并重做一次完整旋转(340 ')。

我可以改变什么来使旋转始终最小?

最佳答案

与问题无关,但据我所知

Math.min(Math.max(t, 0), 1);

实际上并没有改变“t”的值。需要重新分配它

t = Math.min(Math.max(t, 0), 1);

关于javascript - 确保值环绕 360 度时正确插值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56662061/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com