キャンバスの画像データ配列を、次のような多次元座標ベースの配列に変換するメソッドを作成しました。
parse: function() {
var x = y = 0;
var step = 0;
for(var i = 0; i <= this.imageData.length - 4; i += 4) {
if(step == this.width) {
++ y;
step = 0;
}
this.data[x][y] = [this.imageData[i],
this.imageData[i+1],
this.imageData[i+2],
this.imageData[i+3]];
++ x;
++ step;
}
}
小さいスケール (10x10 の画像) でテストしましたが、大きな画像 (私の場合は 800x800) に移動すると、ブラウザー (タブ) が完全にクラッシュします。理由は理解できますが、これを行うためのより効率的な方法があるかどうか疑問に思っています。
何かご意見は?