Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Math 有没有一个公式可以将pow函数中的ease转换为ease out?_Math_Interpolation_Algebra - Fatal编程技术网

Math 有没有一个公式可以将pow函数中的ease转换为ease out?

Math 有没有一个公式可以将pow函数中的ease转换为ease out?,math,interpolation,algebra,Math,Interpolation,Algebra,我有一个在pow函数中用作指数的控件。这可以轻松地更改值。有没有一种方法可以从数学上把它变成一种轻松的方法 例如,我知道,易用性是: pow(t, 3) (pow((t - 1), 3)) + 1 但放松是: pow(t, 3) (pow((t - 1), 3)) + 1 并放松夸脱: float t = t2 - 1 -(pow(t, 4) - 1) 所以公式变化很大,我需要一种通用的方法,这样我可以使用4.2、9.7等值作为指数等。对于整数指数,这称为Hermite插值

我有一个在pow函数中用作指数的控件。这可以轻松地更改值。有没有一种方法可以从数学上把它变成一种轻松的方法

例如,我知道,易用性是:

pow(t, 3)
(pow((t - 1), 3)) + 1
但放松是:

pow(t, 3)
(pow((t - 1), 3)) + 1
并放松夸脱:

   float t = t2 - 1
   -(pow(t, 4) - 1)

所以公式变化很大,我需要一种通用的方法,这样我可以使用4.2、9.7等值作为指数等。

对于整数指数,这称为Hermite插值


我们也可以将此任务解释为中国剩余定理在多项式环中的应用

f(x) == 0 mod x^p
f(x) == 1 mod (x-1)^p
解决方案具有以下形式:

f(x) = a(x)*x^p+b(x)*(x-1)^p  with  deg a(x) < p, deg b(x) < p.

对于非整数指数,为什么要这样做


还要查找“S形函数”


更新


如果导数的连续性不是很重要,那么对于任何正的
a
,您可以使用
c*x^a
进行
0谢谢,非常有用。基本上,如果需要的话,我希望通过指数修改标准化值。但我也想给它一个轻松的版本。这样使用指数是有用的,但在我使用的应用程序中它总是一个浮点数。那么在你的第一个代码中,是不是mod(x,2)==0,等等?我试过这个:我不明白你的
mod(x,2)
表达式。我已经添加了如何使幂函数通过(0.5,0,5),并使其相对于这一点对称。非常感谢,我的意思是用模2来看看指数是奇数还是偶数。我想这就是你的第一个代码所做的。我在这里粘贴了一些代码来显示进度。如果您注意到,ease-in始终使用pow(值,指数),而ease-out根据值是奇数还是偶数在两种不同的形式之间交替。这就是为什么我认为也许有一种方法可以概括它。有人告诉我使用矩阵,但不确定它是否对我有帮助。为了方便起见,您可以始终使用
1-pow(1-t,指数)
,这与您的公式始终相同。但是,对于
t=0.5
,或任何其他
t
,这两个函数之间都存在间隙,如果没有跳转,就无法在它们之间切换。这就是我公式中缩放的原因。
1 = 2*c*0.5^a  <=>  c = 2^(a-1)
y = (0.5>x) ? 0.5*pow(2*x,a) : 1-0.5*pow(2*(1-x), a);