Math 曲线方程
有人能帮我求出这条曲线的方程式吗 编辑: 我在这里找到了一个有效的方程,但我无法计算出每个参数的用途Math 曲线方程,math,Math,有人能帮我求出这条曲线的方程式吗 编辑: 我在这里找到了一个有效的方程,但我无法计算出每个参数的用途 Tween.regularEaseOut = function(t,b,c,d){ return -c *(t/=d)*(t-2) + b; } 它看起来非常像电子产品的标准1/CR型电容充电曲线,存储器中的充电曲线方程为: (1 - e^(-t/RC)) 系数“RC”(电阻*电容)控制斜率接近渐近线的速度 见例 曲线的形状来源于电荷率(即一阶导数)与电流值和目标值之间的
Tween.regularEaseOut = function(t,b,c,d){
return -c *(t/=d)*(t-2) + b;
}
它看起来非常像电子产品的标准1/CR型电容充电曲线,存储器中的充电曲线方程为:
(1 - e^(-t/RC))
系数“RC”(电阻*电容)控制斜率接近渐近线的速度
见例
曲线的形状来源于电荷率(即一阶导数)与电流值和目标值之间的差值成正比的事实。它看起来非常像电子产品的标准1/CR型电容器充电曲线,它从存储器中具有以下等式:
(1 - e^(-t/RC))
系数“RC”(电阻*电容)控制斜率接近渐近线的速度
见例
曲线的形状来自这样一个事实:充电率(即一阶导数)与当前值和目标值之间的差值成正比。我得到了:)
函数Tween(){
这个时间=0;
这个.begin=200;
这个变化=1000;
这个时间=800
this.regularEaseInOut=函数(t,b,c,d){
如果((t/=d/2)<1){
返回c/2*t*t+b;
}
否则{
返回-c/2*((-t)*(t-2)-1)+b;
}
};
}
var Tween=新Tween();
var int=10;
var loop=setInterval(函数(){
Tween.time+=int;
if(Tween.time>=Tween.duration){
清除间隔(循环);
}
否则{
document.getElementById('tst').style.left=Tween.regularEaseInOut(Tween.time,Tween.begin,Tween.change,Tween.duration)+'px';
}
},int);
我明白了:)
函数Tween(){
这个时间=0;
这个.begin=200;
这个变化=1000;
这个时间=800
this.regularEaseInOut=函数(t,b,c,d){
如果((t/=d/2)<1){
返回c/2*t*t+b;
}
否则{
返回-c/2*((-t)*(t-2)-1)+b;
}
};
}
var Tween=新Tween();
var int=10;
var loop=setInterval(函数(){
Tween.time+=int;
if(Tween.time>=Tween.duration){
清除间隔(循环);
}
否则{
document.getElementById('tst').style.left=Tween.regularEaseInOut(Tween.time,Tween.begin,Tween.change,Tween.duration)+'px';
}
},int);
是的,它可能看起来像一个4极高通滤波器。。如果你知道music@clarkk-是的,它不是过滤器传输曲线的正确形状。不,但它看起来像。。但是你能解释一下如何理解这个等式吗?对我来说只是!!&)请为您的问题添加更多细节。是的,它可能看起来像一个4极高通滤波器。。如果你知道music@clarkk-是的,它不是过滤器传输曲线的正确形状。不,但它看起来像。。但是你能解释一下如何理解这个等式吗?对我来说只是!!&)请为您的问题添加更多细节。这是不一致的-是“y”代表“位置”还是“速度”?要匹配原始曲线,请尝试y=m*(1-exp(-t*n))
。选择n
(与a
成比例)留给读者作为练习。这是不一致的-是“y”代表“位置”还是“速度”?要匹配原始曲线,只需尝试y=m*(1-exp(-t*n))
。选择n
(与a
成比例)留给读者作为练习。我想看看该函数的曲线图,看看它是否与您要求的曲线图相像。我想看看该函数的曲线图,看看它是否与您要求的曲线图相像。
<div id="tst" style="position:absolute; top:200px; left:200px; height:100px; width:100px; background:#ff0000"></div>
<script type="text/javascript">
function Tween(){
this.time = 0;
this.begin = 200;
this.change = 1000;
this.duration = 800
this.regularEaseInOut = function(t,b,c,d){
if((t/=d/2) < 1){
return c/2*t*t + b;
}
else{
return -c/2 * ((--t)*(t-2) - 1) + b;
}
};
}
var Tween = new Tween();
var int = 10;
var loop = setInterval(function(){
Tween.time += int;
if(Tween.time >= Tween.duration){
clearInterval(loop);
}
else{
document.getElementById('tst').style.left = Tween.regularEaseInOut(Tween.time, Tween.begin, Tween.change, Tween.duration)+'px';
}
}, int);
</script>