2016-08-22 3 views
1

p5.jsのPGraphicsインスタンスからピクセルにアクセスしようとしていますが、loadPixels()を呼び出しても配列が空です。ここでp5.jsのPGraphicsピクセルにアクセスする方法

は、私が試したものです:

var buffer; 

function setup() { 
    createCanvas(100,100); 
    pixelDensity(1); 

    buffer = createGraphics(100,100); 
    buffer.background(128); 
} 

function draw() { 
    image(buffer,0,0); 
} 

function mouseDragged(){ 
    buffer.ellipse(mouseX,mouseY,3,3); 
    buffer.loadPixels(); 
    console.log(buffer.pixels);//expecint pixels array, getting empty array 
} 

それはp5.jsとPGraphicsのピクセルにアクセスすることは可能ですか?もしそうなら、どうですか?

答えて

2

これはバグであったように表示されます。https://github.com/processing/p5.js/issues/1403

他の関連するバグherehere

最新バージョン(2016年8月17日からバージョン0.5.3)で修正されています。

私のようなp5.jsエディタを使用している場合、明らかに古いバージョンのライブラリが使用されています。最新バージョンをダウンロードしてスケッチフォルダにコピーすることができます。それはエディタの実行の間に残っているようですが、少し怖いですが、多分いくつかの魔法が舞台裏で行われているかもしれません。

とにかく、あなたのコードは、最新バージョンにアップデートした後、期待どおりに動作します。

+0

恐ろしい、ケビン!問題リストをチェックしてください。 私は実際にp5.jsエディタも使用しています。私はプロジェクトフォルダを更新しましたが、エディタのライブラリも更新しました。( '' 'p5.app/Contents/Resources/app.nw/mode_assets/p5/empty_project /' '') –

+1

@GeorgeProfenza変わったのは私(Windows 10)のプロジェクトフォルダの 'p5.js'ファイルを置き換えたばかりですが、エディタをシャットダウンしてもう一度開くと永続化しているようです。ファイルをエディタのライブラリの場所に密かにコピーするかもしれません。それはあなたに全く影響を与えません。ちょうどそれが奇妙だと思っただけです。ハッピーコーディング! –

関連する問題