2016-04-11 10 views
1

現在、人物を描いている人物を追跡してデータベースに保存しようとしています。キャンバスからデータベースに描画座標を保存する

私のウェブページにはキャンバスがあり、マウスを使って描くことができます。私が望むのは、描画中にユーザーが行う動きを保存できることです。描画中に行ったすべての動きを再トレースすることができます。

私の考えは、ユーザーがキャンバス内でマウスをクリックするたびに、ユーザーがマウスボタンを離すまで座標が保存されるということです。もう1つの解決策は、カンバスの3〜4回のクリックごとにキャンバスのイメージを保存することです。そうすれば、描画プロセスを見ることができます。

誰かが優れた解決策を持っているのですか、またはそのような機能を最大限に活用するためのヒントがありますか?

UPDATE:

だから私は、私の説明で十分に特定されていないかもしれません。基本的には、座標を保存してユーザーの描画プロセスを記録し、データベースからこれらの座標を取得し、描画中にユーザーの動きを再生できるようにしたいと思います。

ユーザーが保存ボタンを押したときに座標がデータベースに保存されるため、ボタンが押されるまですべての座標を保存する必要があります。

クライアント側とサーバー側の両方でヘルプが必要です。サーバー側はJavaで書かれています。私は現在、データベースとしてクライアント側とMySQL側でJavaScriptを使用しています。

+0

簡単なヒント:具体的なことを覚えておいてください。それに応じて「アップ・ボート」(またはダウン・ボート)の回答もあります。そうでなければ、他の人は答えたくないかもしれません。 – argon

+1

チップをありがとうございます。質問が更新されました。 – DarthVaber

+0

更新していただきありがとうございます。下記の答えが多少役立つかどうかを確認してください。もしそうなら、投票してください。さらに情報が必要な場合は、その答えの下にコメントしてください。役に立たない場合は、必要なものを達成するための詳細情報を提供するのでコメントしてください。 – argon

答えて

0

描画中にサーバーに座標を送信すると、多くのトラフィックが発生し、他のユーザーとのサーバーの応答が遅くなる可能性があります。

代わりではなく、すべての動きをキャプチャし、送信する:

  • はマウスアップまで、マウスダウンからの動きをバッファリングし、サーバーへの「インスタンスを描く」ことを送ります。
  • これらは、アレイ内のインスタンスを描画し、ユーザーが終了したときにのみ、サーバーに提出-then描画するには、ユーザごとに「ウェブ・ソケット」インスタンスの使用は、このように有利であり得る作る

でも良いかもしれキャプチャHTTPリクエスト(AJAX)よりもはるかに高速で、複数の人が同時に描画している場合、Webソケットは他のユーザのデータを接続されている各ユーザのライブ描画にプッシュできます。

私はあなたがここで達成する必要があるかどうかはわかりませんが、上記が役に立ちます。 あなたが何を達成したいのかを詳述できる場合は、必要なものを達成するための具体的な手順を使って、より詳細な回答を作成することができます。

関連する問題