作者osnq (又可以掛bbs了)
看板Programming
標題[問題] MFC OnPaint 畫線過久的問題
時間Mon Jul 25 18:35:51 2022
有一條陣列包含100000 個點,
用 dc.LineTo 的方式 (for loop) 將每個點連成一條軌跡。
這是一個 Windows 桌面程式,似乎因為太多點,程式會出現 (沒有回應) 的字樣,然後
程式就好像又重新繪製一遍,導致了一個無限循環的現象。
請問有沒有人有經驗,繪製大量的點線,該怎麼處理比較好呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.51.112.155 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Programming/M.1658745353.A.E98.html
1F:→ hichcock: double buffer 60.248.26.251 08/01 15:06
2F:→ MOONRAKER: .NET上會是畫到bitmap 再顯示bitmap 114.32.67.144 08/03 22:50
3F:推 kkes0001: 沒有及時的需求就不要一次畫,慢慢畫啊 49.216.25.198 08/06 20:31
4F:→ kkes0001: …… 49.216.25.198 08/06 20:31
5F:推 Schottky: 認真跟你說,我上次用 OpenGL 解決的 XD 111.250.36.196 08/09 01:25
6F:→ Schottky: 你不用每次 OnPaint 就重繪十萬條線吧 111.250.36.196 08/09 01:26
7F:→ Schottky: 畫好在圖片上,資料沒變就顯示同一張圖 111.250.36.196 08/09 01:27
8F:→ Schottky: 資料每秒變動十次的話 OpenGL 歡迎你 111.250.36.196 08/09 01:30
9F:→ flyfoxy: 雙緩衝 先配一塊bitmap 然後有需要再在 60.250.73.76 08/09 17:00
10F:→ flyfoxy: OnPaint中 memcpy 60.250.73.76 08/09 17:00
11F:→ osnq: 謝謝各位 27.247.134.62 08/11 15:05