2011-10-27 14 views
0

キャンバス上の線を消去して再描画するためにclearRectを使用していますが、行が残ることがあります。私はどこが間違っているのか分かりません。私はここにデモをアップロードしました。私はラインで渡しているキャンバスclearRectですべての行が消去されない

http://zackseuberling.com/screenshots/screen_shot_2011-10-27_at_11.19.29_am_bd26.png

は「down_right」は、などである。この

all_curves = [ 
      ['down_right', 
        [255, 250, 100, 40] 
      ], 
      ['right_down', 
        [355, 290, 330, 245] 
      ] 
    ] 

のような多層的な配列として描画する:これは、問題のスクリーンショットです曲線のパス、および整数の配列は、曲線のx、y、長さおよび高さです。

これはライン

for(each_line in all_curves){ 
      mask_draw(this, all_curves[each_line][0], all_curves[each_line][1][0], all_curves[each_line][1][1], all_curves[each_line][1][2], all_curves[each_line][1][3]); 
    } 
+3

あなたが間違ったことを知るようにソースコードを提供してください。 –

+0

いくつかのコードスニペットを追加しましたが、すべての図面が描画オブジェクトにラップされています。すべてのものがここにあります:http://rumors-studio.com/test/Spheres-of-Influence_Stack_2/js/lines.js – zack

+0

さて、私はあなたのソースコードを見てきました。モバイルデバイス用(ピンク色)、インターフェースデバイス用(緑色)、パーソナルデバイス用(青色)、および特定のデバイスをクリックしてポップアップが表示されたとき(灰色)のマスク用のキャンバス要素。デバイスをクリックすると、最初の3つのキャンバス要素が黒色で再描画され、マスクはデバイスから上へのパスを示します。スクリーンショットから、余分なマスクパスが描画されていることがわかります。これは、jQueryイベントと複数のキャンバス要素を使用しているためです。これらの行に沿って。 –

答えて

0

は、私はあなたのコードを書き換えてきた、と私はそれが正常に動作すると信じて描くコードです。私の意見では、複数のキャンバス要素を使用し、CSSを使用してそれらをオーバーレイすることでした。 MediaFirezipのアーカイブをアップロードしましたので、そこからダウンロードできます。私はindex.htmlファイルに変更を加えただけで、jsフォルダに新しいstack.jsファイルを作成しました。あなたは何か質問があるなら、私に尋ねてください。お役に立てれば。

関連する問題