         }
     }
     
-    private func resetVelocity(#touchLocation: CGPoint)
+    private func resetVelocity()
     {
         _velocitySamples.removeAll(keepCapacity: false);
-        _velocitySamples.append(AngularVelocitySample(time: CACurrentMediaTime(), angle: angleForPoint(x: touchLocation.x, y: touchLocation.y)));
     }
     
     private func sampleVelocity(#touchLocation: CGPoint)

    
    private func calculateVelocity() -> CGFloat
    {
        var firstSample = _velocitySamples[0];
        var lastSample = _velocitySamples[_velocitySamples.count - 1];
        
        // Look for a sample that's closest to the latest sample, but not the same, so we can deduce the direction
        var beforeLastSample = AngularVelocitySample(time: 0.0, angle: 0.0);
        for (var i = _velocitySamples.count - 1; i >= 0; i--)
        {
            beforeLastSample = _velocitySamples[i];

            {
                self.updateGestureRotation(x: touchLocation.x, y: touchLocation.y);
                setNeedsDisplay();
            }
        }
    }
