         if let touch = touches.first as? UITouch {
             
             let location = touch.locationInView(self)
-            let initialAlpha = CGFloat(0.1)
-            let startColor = UIColor(red: 0, green: 1, blue: 1, alpha: initialAlpha)
-            var colors: Array<AnyObject> = [
-                startColor,
-                UIColor(red: 1, green: 0, blue: 0, alpha: initialAlpha),
-                UIColor(red: 0, green: 0, blue: 1, alpha: initialAlpha),
-                UIColor(red: 1, green: 0, blue: 1, alpha: initialAlpha),
-                UIColor(red: 1, green: 1, blue: 0, alpha: initialAlpha),
-                UIColor(red: 0, green: 1, blue: 0, alpha: initialAlpha),
-                startColor,
-            ]
+//            let initialAlpha = CGFloat(0.1)
+//            let startColor = UIColor(red: 0, green: 1, blue: 1, alpha: initialAlpha)
+//            var colors: Array<AnyObject> = [
+//                startColor,
+//                UIColor(red: 1, green: 0, blue: 0, alpha: initialAlpha),
+//                UIColor(red: 0, green: 0, blue: 1, alpha: initialAlpha),
+//                UIColor(red: 1, green: 0, blue: 1, alpha: initialAlpha),
+//                UIColor(red: 1, green: 1, blue: 0, alpha: initialAlpha),
+//                UIColor(red: 0, green: 1, blue: 0, alpha: initialAlpha),
+//                startColor,
+//            ]
             
             for (i, (emotion, label)) in enumerate(topLevelEmotionLabels) {
                 let centre = CGPoint(x: label.frame.midX, y: label.frame.midY)
                 let distance = distanceBetween(centre, location)
-                println("== \(i): \(distance)")
-
-                let c = colors[i] as! UIColor
+//                println("== \(i): \(distance)")
+//
+                let color = colors[i]
                 var r: CGFloat = 0
                 var g: CGFloat = 0
                 var b: CGFloat = 0
                 var a: CGFloat = 0
-                c.getRed(&r, green: &g, blue: &b, alpha: &a)
+                color.getRed(&r, green: &g, blue: &b, alpha: &a)
                 let newAlpha = max(a, 1.0 / max(0.2 * distance, 1.0))
-                println(newAlpha)
-                println()
-                colors[i] = UIColor(red: r, green: g, blue: b, alpha: newAlpha).CGColor
+//                println(newAlpha)
+                let radial = radials[i]
+                let newColor = UIColor(red: r, green: g, blue: b, alpha: newAlpha)
+                radial.colors = [newColor, UIColor.clearColor()]
+//                colors[i] = UIColor(red: r, green: g, blue: b, alpha: newAlpha).CGColor
             }
 
-            let l: AngleGradientLayer = self.layer as! AngleGradientLayer
+//            let l: AngleGradientLayer = self.layer as! AngleGradientLayer
 
-            l.setNeedsDisplay()
+//            l.setNeedsDisplay()
 
-            l.colors = colors
-            println(l.locations)
+//            l.colors = colors
+//            println(l.locations)
 
 
         }

                    label.width == size.width
                    label.height == size.height
                }
            }
            
            let l: AngleGradientLayer = self.layer as! AngleGradientLayer
           l.locations = angles
        }
    }
    
    override public class func layerClass() -> AnyClass {
        return AngleGradientLayer.self
    }
    
    public override func touchesBegan(touches: Set<NSObject>, withEvent event: UIEvent) {
        return

    func setup() {
        centreEmotionLabel.text = centreEmotion
        self.addSubview(centreEmotionLabel)
        for (i, emotion) in enumerate(topLevelEmotions) {
            
            let label = LTMorphingLabel()
            label.text = emotion
            label.textAlignment = NSTextAlignment.Center

            topLevelEmotionLabels[emotion] = label

            self.addSubview(label)
            
            let radial = GradientView()
            radial.backgroundColor = UIColor.clearColor()
            radial.colors = [colors[i], UIColor.clearColor()]
//            radial.mode = .Linear
            radials.append(radial)
            self.addSubview(radial)
            
        }
        
//        let l: AngleGradientLayer = self.layer as! AngleGradientLayer
//
//        l.colors = colors
//        l.cornerRadius = CGRectGetWidth(self.bounds) / 2
    }
    
