瀏覽代碼

Merge pull request #4273 from danielgindi/bugfix/velocity

Restored correct velocity sampler
Daniel Cohen Gindi 5 年之前
父節點
當前提交
6ab4b03d08
共有 1 個文件被更改,包括 18 次插入6 次删除
  1. 18 6
      Source/Charts/Charts/PieRadarChartViewBase.swift

+ 18 - 6
Source/Charts/Charts/PieRadarChartViewBase.swift

@@ -677,13 +677,25 @@ open class PieRadarChartViewBase: ChartViewBase
         }()
 
         // Remove samples older than our sample time - 1 seconds
-        // while keeping at least one samples
-        let index = velocitySamples
-            .dropLast()
-            .lastIndex { $0.time < currentSample.time - 1 }
-        if let index = index {
-            velocitySamples.remove(at: index)
+        // while keeping at least one sample
+        
+        var i = 0, count = velocitySamples.count
+        while (i < count - 2)
+        {
+            if currentSample.time - velocitySamples[i].time > 1.0
+            {
+                velocitySamples.remove(at: 0)
+                i -= 1
+                count -= 1
+            }
+            else
+            {
+                break
+            }
+
+            i += 1
         }
+
         velocitySamples.append(currentSample)
     }