gpt4 book ai didi

c++ - 符号性的线性插值优化

转载 作者:行者123 更新时间:2023-11-30 03:42:53 25 4
gpt4 key购买 nike

在一个紧凑的循环中,我在两个浮点值之间进行线性插值。然而,结果中唯一必要的部分是符号(无论结果是负数还是正数)。我现在正在做一个典型的 lerp 操作,在 a 和 b 之间。

a + f * (b - a);

考虑到我只需要知道结果符号而不是实际的锯齿值,有什么更有效的方法吗?

编辑:“f”是一组沿插值的固定距离,这些距离是事先已知的。

最佳答案

您可以计算内插值是否在给定范围内改变符号:

if Sign(a) <> Sign(b) then  //don't forget about zero sign
change occurs

在这种情况下,找到 f 参数,其中 lerp = 0

a + f0 * (b - a) = 0
f0 = a / (a+b)

对于较小的值,lerpa 具有相同的符号,对于较大的值 - 与 b 具有相同的符号,因此您不需要计算 lerp 值 - 只需将 ff0

进行比较

关于c++ - 符号性的线性插值优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36541083/

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