在对角线上翻转图像

时间:2017-04-19 02:26:46

标签: java

我需要在图像的右上角到左下角的假想对角线上翻转图像。这就是我到目前为止所拥有的。 getBasicPixel(x,y)将像素的rgb作为int值返回。

public static void flipD(Picture p){
    int h= p.getHeight();
    int w= p.getWidth();
    int v=0;

    for(int i=0; i< h; i++){
        for(int j=0; j<w; j++){
            v=p.getBasicPixel(i,j);
            p.setBasicPixel(w-1-i, w-1-j, v);
        }
    }
}

1 个答案:

答案 0 :(得分:0)

这应该是交易x和y的问题。所以,如果一个人在数组上执行此操作,它将看起来像这样。

int portrait[][] = { {1,2}, {2,4}, {3,6} };
int landscape[][] = new int[2][3];

for (int row=0; row < portrait.size; row++) {
    for (int col=0; col < portrait[0].size; col++) {
        landscape[col][row]=portrait[row][col];
    }
}