Androidビットマップからピクセルアレイでピクセルのxy座標を見つける方法
-
29-10-2019 - |
質問
bitmap.getPixels()メソッドを使用してビットマップから派生したINTアレイがあります。このメソッドは、アレイにビットマップからのピクセルを入力します。その配列をループするときに、各ピクセルのXY座標を取得するにはどうすればよいですか?事前にマットに感謝します。
更新]数学をありがとう。次のコードを試しました。最初の50000ピクセルを白に変更したビットマップがあります。今、私はビットマップを繰り返して、すべての白いピクセルを赤に変更したいと思います。 ATMビットマップの上部にある白いピクセルのブロックを通る赤い線は1つだけです。アイデアはありますか?どうもありがとう。
int length = bgr.getWidth()*bgr.getHeight();
int[] pixels = new int[length];
bgr.getPixels(pixels,0,bgr.getWidth(),0,0,bgr.getWidth(),bgr.getHeight());
for (int i=0;i<50000;i++){
// If the bitmap is in ARGB_8888 format
pixels[i] = Color.WHITE;//0xffffffff;
}
bgr.setPixels(pixels,0,bgr.getWidth(),0,0,bgr.getWidth(),bgr.getHeight());
int t = 0;
int y = t / bgr.getWidth();
int x = t - (y * bgr.getWidth());
for( t = 0; t < length; t++){
int pixel = bgr.getPixel(x,y);
if(pixel == Color.WHITE){
bgr.setPixel(x,y,Color.RED);
x++;y++;
}
}
正しい解決策はありません
所属していません StackOverflow