フォームにフリーハンドで線を描画するために
MouseMoveのイベントにLintoを使用して線を書きました。
マウスを速く動かすと線がかくかくしてしまいます。
なめらかな線をフリーハンドで書くためにはどうすれば
よいのでしょうか?
CPUがPen2 400MHzなんていうかなり低スペックなマシンで試してみましたが、マウスの動きに描画が追いつかない、という状態にはなりませんでした。
それとも目的が、「ドローツールにあるようななめらか曲線描画機能」なんでしょうか?
PaintShopでは、マウスをUPした途端に線が滑らかに描き変わるようなので、
恐らくマウスUP後に適当なサンプリングポイントを選出し、スプラインかベジェで描き直しているものと思われます。(この場合、勿論もとの描画とは微妙に異なる)
返信ありがとうございます。
ある程度の早さまでは問題なく描けるのですが、マウスを素早く動かすと
どうしてもかくかくしてしまいます。
CPUは800MHzのものですが、試しにもっと速い2G程度のPC
でも同じEXEファイル動かしてみてもあまり変わりませんでした。
解決しているのであればよいかもしれませんが…
例えば標準の「ペイント」で描かれる線をカクカクといえばカクカクです。
どの程度のパフォーマンスが欲しくてどの程度カクカクしてるのかが分かりません。
普通はOnMouseMoveイベントでマウス座標からペンで線を描くと思いますが、2GHzと800MHzで似たパフォーマンスって事はもしかしてタイマー使ってませんか??
ツイート | ![]() |