私のプログラムには、ビットマップを含む画像ボックスがあります。 (300x300 35kB .PNG ファイル)
2 つの変数 (x/z 座標) が変更された場合、それに応じて新しい位置に新しい円を毎秒描画します。タイマーがバックグラウンドで実行され、このメソッドが呼び出されます。
void DrawEllipse()
{
// Retrieve the image.
bChamber = new Bitmap(global::Project.Properties.Resources.driveChamber1);
gChamber = Graphics.FromImage(bChamber);
gChamber.FillEllipse(brushChamber, VirtualViewX(), VirtualViewY(), 10, 10);
pictureBoxDriveView.Image = bChamber;
}
現在、パフォーマンスを最適化する方法を探しています。たとえば、0.2秒ごとに画像を再描画すると、プログラムが非常に遅くなり、他に何もできなくなります。しかし、最終的には円のより滑らかな動きが必要です。1000 ミリ秒のリフレッシュ レートでどのように遅れるか想像してみてください。
これを行うには、ビットマップ全体を毎回ロードするより良い方法はありますか?