作者batista5566 (炸彈摔5566)
看板AndroidDev
標題[問題] 畫出波形
時間Wed Mar 27 21:43:08 2013
我個人是這個月才看Android的書,
我想請問各位開發者,
如果要畫出一個可以左右滑動,且會隨時間移動的波形(畫面由右至左滑)
波形的本體是個一維陣列,陣列長度的大小會隨著來源而有所不同,
可能一開始整個矩陣大小就有個定值(已有輸入好的數據檔案),
或是不定值(矩陣會隨時間越來越大)(經藍芽傳輸正在輸入的數據檔案),
我想請教的是,因為我比較不希望這波形滑動時會有Lag的情況發生,
我看網路上畫波形有三個方式
(1)SurfaceView、(2)AChartEngine、(3)GraphView Library
那我想請教的是哪種方式比較適合讀檔、或接收藍芽數據,
能夠不Lag的畫出波形圖出來
http://youtu.be/aRryxECCvtU?t=1m1s
(它這個還是會小Lag,另外我也想如果可以,也在波形上面標註數值。)
這樣的話(1)、(2)或(3)或(4)其他(如果有推薦)的方式,哪個適合做開發?
謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.124.43.36
1F:→ sweet00914:我不知道哪個比較好~但我有使用(2)來實作過~0.0 03/27 22:52
3F:→ sweet00914:圖二就是實例~綠色表示即時心跳率~紅色表示歷史數據。 03/27 22:54
我昨天有去下載AChartEngineDemoCoce檔,然而不管在模擬或是實機上跑,
在初始畫面中(選擇要看哪一種的Demo),不論選哪一個,都會中止執行程序ˊˋ
The application achartengine (process org.achartengine.chartdemo.demo) has
stopped unexpectedly.....
4F:→ limitX:用1 的方式畫ecg 。 開thread去跑。 03/28 00:03
5F:→ limitX:嫌畫圖慢 有opengl可以試試 03/28 00:05
嗯,剛看一下,需要用C寫啊,嗯....
※ 編輯: batista5566 來自: 140.124.43.36 (03/28 09:48)
※ 編輯: batista5566 來自: 140.124.43.36 (03/28 09:51)
6F:推 Killercat:你舉的三個都跟讀檔 接收藍牙數據無關 03/28 12:46
7F:→ Killercat:不過SurfaceView連影片都能播了 跑個波型會lag的話 03/28 12:47
8F:→ Killercat:可能要考慮一下是不是其它因素(比方說數據處理) 03/28 12:47
這我檢查看看,而且我也是想找說有沒有Chart Library能夠在波形由右至左滑動時,
能夠撰寫時比較簡易,昨天是有試過GraphView Library,
不過在輸入顏色(有多條數據要辨識)那裏就一直產生錯誤Q_Q。
9F:推 the2046:同意樓上, SurfaceView是獨立的緒作繪製, 應該是 03/28 16:31
10F:→ the2046:較不會 LAG的方式(單指繪圖) 03/28 16:32
11F:→ the2046:SurfaceView是我們獨立開個執行緒在背後請求重繪 03/28 16:33
12F:→ the2046:所以你能試試看 sleep(ms), ms設為0, 測試它的繪製速度 03/28 16:34
13F:→ the2046:若你懂 OpenGl, 則可以使用 GlSurfaceView獲得更好的效能 03/28 16:34
我先試試sleep(ms)看看,謝謝提醒^^"。
※ 編輯: batista5566 來自: 140.124.43.36 (03/29 10:05)
15F:→ bukiya:開發app時繪圖方式的選擇,renderscript從4.1以後不支援 03/29 11:13