私はActionScript3でシンプルなホワイトボードアプリを作成しています。ActionScriptのほとんどのホワイトボードまたはペイントアプリは、インターバル、タイマー、mouseMoveイベント、またはenterFrameイベントを使用して、マウスの位置を追跡し、追跡されたポイント間の線またはブラシをペイントする傾向があります。 。
私が達成しようとしているのは、Photoshopのようなプログラムがブラシツールでペイントしているときにレンダリングできる、滑らかなペイントラインです。Photoshopでは、マウスをキャンバス上でどれだけ速く動かしても、ペイントされた線は常に滑らかな曲線のエッジになります。私のアプリでは、前述の方法のいずれかを使用して、ブラシをステージにレンダリングする関数呼び出しの間に常にレイテンシーがあります。したがって、これらの手法のいずれかを使用すると、マウスを非常にすばやく円形に動かすときに、鋭い角のある線が生じる可能性があります。
これは私にとっては驚きではありません。Photoshopのブラシツールのように、より滑らかな線を実現する方法がわかりません。念のために言っておきますが、私のアプリのブラシは主に形状に基づいており、描画APIを使用して連続線を描画しないか使用できません。つまり、graphics.curveTo()はオプションではありません。また、ブラシによって生成されたスプライトまたはシェイプをBitmapDataインスタンスにレンダリングしています。