我想在iPhone中繪製心率監視器應用程序的圖形(ECG Type)。我不想使用核心情節,但喜歡用石英開發。我正在從藍牙設備接收心跳值,現在我想根據從BLE接收的值創建圖表?如何使用Quartz Framework繪製圖形
感謝
我想在iPhone中繪製心率監視器應用程序的圖形(ECG Type)。我不想使用核心情節,但喜歡用石英開發。我正在從藍牙設備接收心跳值,現在我想根據從BLE接收的值創建圖表?如何使用Quartz Framework繪製圖形
感謝
第一個簡單的方法是使用UIBezierPath
畫一條線在視圖中drawRect:
。您必須將接收到的值轉換爲視圖的座標系,然後創建一個UIBezierPath
的實例,您可以在其中添加所有與addLineToPoint:
相關的點。最後你打電話[bezierPath stroke]
實際畫線。您可以爲您的ViewController創建一個數據源協議,並在您的視圖上創建一個reload
方法,當接收到新數據時觸發視圖重繪。
謝謝暗示我,但我問題是,我從BLE設備(75,83,92等)獲取數值,我必須在我的視圖中將它們繪製爲朝x軸移動的圖形,所以我的y值將來自該設備和x,我會添加一些常數值,但是當圖形到達屏幕的最終位置(320)時,會發生什麼呢?以前的點需要從屏幕上移除,如何?另外我應該如何每秒用新值更新圖形,所以它不會從頭開始生成整個圖形? – york
您需要確定哪些點實際可見,然後將它們饋送到視圖。從每次打勾開始重繪。如果這樣做不夠好,就開始優化它。 – Karl
如何清除繪圖並重新繪製?我的線條越來越像蛇那樣越來越長:) –