📄 polynormal.txt
字号:
//多项式内插算法fIn的首地址和iPosition共同决定插值的位置,iType决定插值次数,fFraction决定插值在两点间的小数值
调用之前,要注意插值的目标位置不能越界,在调用之前要判断一下!
float InterPolatePolyNormal(float *fIn,float fFraction, int iType )
{
float fPx;
float fLix;
float fX;
fPx=0;
fX=iPosition+fFraction;
for(int i=0;i<iType+1;i++)
{
fLix=1.0;
for(int j=0;j<iType+1;j++)
{
if((i-j)!=0) fLix=fLix*(fX-j)/(i-j);//目标点滑动到i点时,与当前点i不同的点都要有一个拉格朗日算子
continue;
}
fPx=fPx+fLix*fIn[i];
}
return(fPx);
}
int TestMyLib()
{
float fMa[13]={0,0,0,0,0,0,0,0,0,2.3026,2.3979,2.4849,2.5649};
float fResult=0;
fResult=InterPolatePolyNormal(fMa+10,3,0,0.75,2);
CString info;
info.Format("内插结果=%f",fResult);
AfxMessageBox(info);
return(0);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -