2012-06-19 103 views
0

我的程序每秒接收兩次或三次來自LAN的頻譜數據。這些數據是FFT的結果。我需要儘可能快地重新繪製頻譜並實時顯示。現在我在C++ Builder上有一個應用程序可以完成這項工作,但是可以在畫布上逐點繪製,或者像這樣運行......這太慢了。此外,我不時需要從文件中加載頻譜並移動圖片。在C#.NET中繪製實時頻譜的最佳方式是什麼?

問題:現在我需要在.NET上重寫這樣的程序。達到這個目標的最好方法是什麼?

什麼是最好的技術? WPF,XNA還是GDI?

我在哪裏可以找到一個exmaple?

在此先感謝。

+0

你基本上是問: 「我怎樣纔能有效地繪製在C#2D圖形」?因爲*你畫的東西並不重要。看起來你只是在實時渲染*某種形式的2D圖形時遇到問題。 –

+0

海事組織這是你最舒服的。對我而言,如果我先找不到已經做到的開源代碼,那麼我選擇WPF。不是條形圖工作? – kenny

+0

我發現WPF並沒有像我期望的那麼快。我能找到的禁食方式(除了着色器,原始directx,ogl,...)是Interop的GDI。 –

回答

-1

因此,作爲我調查的結果,快速重繪圖像並使用邊距來移動圖像是最佳選擇之一。

爲了加快圖像創建LockBits使用

http://msdn.microsoft.com/en-us/library/5ey6h79d(v=vs.110).aspx

C# LockBits perfomance (int[,] to byte[])

+0

你真的想通過指針設置每個像素來繪製一個光譜,......? –

+0

也許我沒有正確描述目標......我需要繪製超聲波圖:)而且我真的按像素逐像素地繪製,不要想像另一種方式...... – Yury

相關問題