すがブロ

sugamasaoのhatenablogだよ

配列のクソやろう

 ちょっと訳あって今作っている卒論のプログラムを書き直す。
いや、速度の面やソースコードのクラス化などが気になっていたので整理しようと思って(この時期にやらんでも)。
んで、今まで画素値を二次元配列に格納していじっていたのを一次元配列ですますこととした。
しかし、画像を配列に読み込んで出力すると右端の画像が左端の画像になってしまう。
↓みたいな感じ

現実)
123456123
123456123
123456123

予定)
123456789
123456798
123456789

本当は123456789って出したいのに、123456123と123が舞い戻ってる。
散々アドレス値やら格納されている値、メモリ確保の方法など探した結果、画素値を格納するところで配列に入れる計算式を間違えてた……_| ̄|○

本当は
array[x + y * width] = 画素値
のはずが
array[x + y * height] = 画素値
になっていた。
こんな事に何時間掛けたんだ……_| ̄|○
悔しいんでここに愚痴っとく(苦笑)。