掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
画像の回転ってどうやるんでうしょうか? (ID:104329)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> 20番目に"画像の回転"があります。 > PaintPictureでもできるんですね。 これと同じ処理はStretchBltでもできますよ。 1ピクセル毎に書き換えて遅くなるのは コンパイラ(VB)の性能が悪いからでしょう。 アセンブラをうまく使えば単なる転送であればBitBltより高速です。 (BitBltは異なるカラービット間の転送もサポートしてるわけだし 当然といえば当然なんですけど・・・・) 同様に回転の処理が遅いのは回転後の座標を計算するための 処理時間が余計にかかってしまうためです。 これを軽減するための一般的な手法は最も負荷の高い SinやCosの演算を事前に行っておき、テーブルとして準備する方法です。 これをやるだけでもかなり違ってきます。 一応、確認ですけど1ピクセル毎に書き換えってPointとか GetPixelとかでやってるわけではないですよね? GetDIBitsとかで一気に取得し、メモリ上で演算し ネイティブコンパイルでコンパイルすれば、サイズにもよりますが まぁ、十分実用に耐えうる速度になるのではないでしょうか。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.