cuix-github/VFXEPOCH

Bugs in the VFXEpoch::InterpolateGrid() function

Closed this issue · 0 comments

float
VFXEpoch::InterpolateGrid(float x, float y, VFXEpoch::Grid2DfScalarField& field){
int i, j;
float fx, fy;

VFXEpoch::get_barycentric(x, j, fx, 0, field.getDimX());
VFXEpoch::get_barycentric(y, i, fy, 0, field.getDimY());
return VFXEpoch::Bilerp(fx, fy, field(i, j), field(i + 1, j), field(i, j + 1), field(i + 1, j + 1));

}

float
VFXEpoch::InterpolateGrid(Vector2Df pos, Grid2DfScalarField& field){
int i, j;
float fx, fy;
VFXEpoch::get_barycentric(pos.m_x, j, fx, 0, field.getDimX());
VFXEpoch::get_barycentric(pos.m_y, i, fy, 0, field.getDimY());
return VFXEpoch::Bilerp(fx, fy, field(i, j), field(i + 1, j), field(i, j + 1), field(i + 1, j + 1));
}