git.iko.soy/metal-metaballs
on master help sign in
Refactored for DRY.
9c79a93vinivendra
PixelImage/ViewController.swift+6−3
@@ -55,12 +55,15 @@ class ViewController: UIViewController, MetaballDataSource {
55 }
55 }
56
56
57 func addEdge(i: Int, _ j: Int) {
57 func addEdge(i: Int, _ j: Int) {
58− let parameters = EdgeAnimationParameters(startDate: NSDate(), duration: edgeAnimationDuration, fadeIn: true, i: i, j: j)
58+ animateEdge(i, j, fadeIn: true)
59− NSTimer.scheduledTimerWithTimeInterval(1.0/60.0, target: self, selector: "animateEdgeWithTimer:", userInfo: parameters, repeats: true)
60 }
59 }
61
60
62 func removeEdge(i: Int, _ j: Int) {
61 func removeEdge(i: Int, _ j: Int) {
62+ animateEdge(i, j, fadeIn: false)
63+ }
64+
65+ func animateEdge(i: Int, _ j: Int, fadeIn: Bool) {
63− let parameters = EdgeAnimationParameters(startDate: NSDate(), duration: edgeAnimationDuration, fadeIn: false, i: i, j: j)
66+ let parameters = EdgeAnimationParameters(startDate: NSDate(), duration: edgeAnimationDuration, fadeIn: fadeIn, i: i, j: j)
64 NSTimer.scheduledTimerWithTimeInterval(1.0/60.0, target: self, selector: "animateEdgeWithTimer:", userInfo: parameters, repeats: true)
67 NSTimer.scheduledTimerWithTimeInterval(1.0/60.0, target: self, selector: "animateEdgeWithTimer:", userInfo: parameters, repeats: true)
65 }
68 }
66
69