本文整理汇总了C++中FlowField::Resize方法的典型用法代码示例。如果您正苦于以下问题:C++ FlowField::Resize方法的具体用法?C++ FlowField::Resize怎么用?C++ FlowField::Resize使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FlowField
的用法示例。
在下文中一共展示了FlowField::Resize方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: writeErrorToPNG
void FlowField::writeErrorToPNG(std::string filename, FlowField &t){
FlowField tmp;
std::pair<int, int> size = Size();
tmp.Resize(size);
for (int i = 0; i < size.first; i++){
for (int j = 0; j < size.second; j++){
tmp.u[i][j] = u[i][j] - t.u[i][j];
tmp.v[i][j] = v[i][j] - t.v[i][j];
}
}
std::vector< std::vector<RGBA> > src = tmp.getColorImage();
std::vector<unsigned char> raw (size.first * size.second * 4);
for (int j = 0; j < size.second; j++){
for (int i = 0; i < size.first; i++){
raw[j * size.first * 4 + i * 4] = src[i][j].r;
raw[j * size.first * 4 + i * 4 + 1] = src[i][j].g;
raw[j * size.first * 4 + i * 4 + 2] = src[i][j].b;
raw[j * size.first * 4 + i * 4 + 3] = src[i][j].a;
}
}
lodepng::encode(filename.c_str(), raw, size.first, size.second);
}