WPFでブラシを使用するよりも、多かれ少なかれ、パフォーマンスの繰り返し画像の多くをレンダリングしていますか?
-
20-09-2019 - |
質問
当社が取り組んでいるアプリケーションは、現在、「タイル」を描くようにグラデーションで多くの長方形の形状を表示します。内部の議論は、パフォーマンスの問題を提起したことについて来ました。これらのタイルは、200個のピクセル×約100ピクセルであり、いずれかの勾配は、赤色、黄色、または緑色の網掛けされています。どの時点でも、画面上でこれらのタイルの最大100可能性があります。私たちはそれぞれ(黄、赤、緑)用の画像を作成し、必要なときにそれを繰り返すようにするために、それはよりパフォーマンスのだろうか、私たちは、標準のWPFのブラシを使用して描画を継続することが良いでしょう?
編集:明確にするために、私たちが使用しているグラデーションブラシはLinearGradientBrushです。
解決
経験から、はるかに優れた性能を持つことになりますブラシを使用してそれらを描きます。タイル画像をアップロードし、それらをレンダリングのオーバーヘッドが満たされた四角形を描画するには大規模な比較されます。
他のヒント
これを解消する唯一の方法はそれを両方の方法を試してみて、それぞれのアプローチの性能を測定することです。
あなたは、ループをレンダリングし、1000年(あるいは100,000)強制、その後、結果をファイルにログ時にコードを追加する必要があると思い現実的な数字を得ることができるようにするために再描画します。
私の直感では、LinearGradientBrush
が(でも資源から)画像をロードするよりも速くなることである - しかし、私は間違って証明するために喜んだ。
所属していません StackOverflow