×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
BitmapData.getPixelsメソッドの戻り値はByteArrayなので、使いどころが難しいと思ってたんですが、やってみると意外や、ByteArray.readByteで順にARGBのチャネルが取り出せてラクだったりして。気持ち負荷も小さい気がする(あくまで気持ち)。
モザイクにするために、矩形領域のRGBAカラーをgetPixelsでByteArrayとして取り出して、そこから平均値を求めるメソッドを書きました。気を付けるのは、readByte()の型はintなので24ビット要らないモンがくっついてるってとこですかね。
public static function averageOfColorArray(colors:ByteArray):uint{
var len:uint = colors.length >>> 2;
var aSum:uint, rSum:uint, gSum:uint, bSum:uint;
var i:uint;
colors.position = 0;
for (i = 0; i < len; i++) {
aSum += colors.readByte()&0xff;
rSum += colors.readByte()&0xff;
gSum += colors.readByte()&0xff;
bSum += colors.readByte()&0xff;
}
aSum /= len;
rSum /= len;
gSum /= len;
bSum /= len;
return (aSum << 24) | (rSum << 16) | (gSum << 8) | bSum;
}特に何の変哲もヒネリも無いです。PR
この記事にコメントする
26歳のハローワールド
カレンダー
| 10 | 2025/11 | 12 |
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
最新記事
(05/23)
(05/11)
(05/09)
(05/08)
(05/08)
(03/07)
(02/25)
(02/07)
(02/07)
(01/28)
最新コメント
[11/27 gyzwviyehl]
[11/18 Tepexaxyonelo]
[09/12 gomFolley]
[08/16 CypeBachCoece]
[06/02 gb]
[03/06 kishima]
[01/18 KNDY]
[01/16 kage]
[12/23 KNDY]
[12/23 kage]
最新トラックバック
カテゴリー
アーカイブ
ブログ内検索
アクセス解析