             var touch = touches.first as! UITouch!;
             
             var touchLocation = touch.locationInView(self);
+            
+            if (isDragDecelerationEnabled)
+            {
+                sampleVelocity(touchLocation: touchLocation);
+            }
             
             if (!_isRotating && distance(eventX: touchLocation.x, startX: _touchStartPoint.x, eventY: touchLocation.y, startY: _touchStartPoint.y) > CGFloat(8.0))
             {

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

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