0

我必须比较两个二维向量 (vect_2d_avect_2d_b),因此我将构造一个二维向量/二维数组 ( vect_compare_result),其中包含 和 的值的vect_2d_a差异vect_2d_b

基本上我可以简单地打印vect_compare_result并查看它,但我想将其视为一个带有简单框的图形,指示像素差值(如 matlab 中的颜色条)。

是否可以使用或其他东西将简单的二维向量显示为图形Qimg

普里亚

4

1 回答 1

1

假设你的向量的大小是n x n

QImage image(n, n, QImage::Format_RGB32);
QRgb value;

for (int i=0;i<N;++i) {
    for (int j=0;j<N;++j) {
        value = getColor(vect_compare_result); //a function that returns color based on value
        image.setPixel(i, j, value);
    }
}

如果你想让你的像素更大(比如一个盒子是 5x5 真实像素):

int box_size = 5;
QImage image(n * box_size, n * box_size, QImage::Format_RGB32);
QRgb value;

for (int i=0;i<N;++i) {
    for (int j=0;j<N;++j) {
        value = getColor(vect_compare_result);
        for (int k=0;k<box_size;++k)
            for (int l=0;l<box_size;++l)
                image.setPixel(i+k, j+l, value);
    }
}
于 2015-09-23T11:39:17.790 回答