我正在尝试插入以20Hz给出的数据,我想插值为25Hz。
while (time.data() && m < (time.size() - 1))
{
if (time[m] >= x && time[m] != time[m + 1])
{
x0 = time[m];
x1 = time[m + 1];
y0 = pos[0][m];
y1 = pos[0][m + 1];
y = y0 + (x - x0) * ((y1 - y0) / (x1 - x0));
itime.push_back(x);
ipos[0].push_back(y);
}
x = x + dx;
m++;
}
我的问题是,当我增加m
时,我最终会到达时间向量的末尾,但不会到达时间值的末尾。顶部的time.data()
应该一直持续到时间向量的末尾,但m < (time.size() - 1)
是事情搞砸的地方。