Skip to content

Instantly share code, notes, and snippets.

@traviskirton
Created April 11, 2016 09:22
Show Gist options
  • Select an option

  • Save traviskirton/3fb118fd2457b17fc15ea976206a2b02 to your computer and use it in GitHub Desktop.

Select an option

Save traviskirton/3fb118fd2457b17fc15ea976206a2b02 to your computer and use it in GitHub Desktop.
Updated Basics
import UIKit
class WorkSpace: CanvasController {
override func setup() {
sequenceAnimation()
}
func sequenceAnimation() {
let square = Rectangle(frame: Rect(0,0,100,100))
square.center = canvas.center
canvas.add(square)
let circle = Circle(center: canvas.center, radius: 50)
canvas.add(circle)
let squareAnim = ViewAnimation(duration: 1.0) { () -> Void in
square.transform = Transform.makeRotation(M_PI)
}
let circleAnim = ViewAnimation(duration: 1.0) { () -> Void in
let randomColor = Color(red: random01(), green: random01(), blue: random01(), alpha: 1.0)
circle.fillColor = randomColor
}
let sequence = ViewAnimationSequence(animations: [squareAnim, circleAnim])
wait(1.0) {
sequence.animate()
}
}
func groupAnimation() {
let square = Rectangle(frame: Rect(0,0,100,100))
square.center = canvas.center
canvas.add(square)
let circle = Circle(center: canvas.center, radius: 50)
canvas.add(circle)
let squareAnim = ViewAnimation(duration: 1.0) { () -> Void in
square.transform = Transform.makeRotation(M_PI)
}
squareAnim.repeats = true
let circleAnim = ViewAnimation(duration: 1.0) { () -> Void in
let randomColor = Color(red: random01(), green: random01(), blue: random01(), alpha: 1.0)
circle.fillColor = randomColor
}
circleAnim.repeats = true
let group = ViewAnimationGroup(animations: [squareAnim, circleAnim])
wait(1.0) {
group.animate()
}
}
func propertyAnimation() {
let anim = ViewAnimation(duration: 1.0) { () -> Void in
self.canvas.backgroundColor = C4Blue
}
anim.curve = .EaseOut
anim.repeats = true
wait(1.0) {
anim.animate()
}
}
func panGesture() {
let square = Rectangle(frame: Rect(0,0,100,100))
square.center = canvas.center
canvas.add(square)
canvas.addPanGestureRecognizer { (locations, center, translation, velocity, state) -> () in
square.center = center
}
}
func tapGesture() {
let square = Rectangle(frame: Rect(0,0,100,100))
square.center = canvas.center
canvas.add(square)
square.addTapGestureRecognizer { (locations, center, state) in
let randomColor = Color(red: random01(), green: random01(), blue: random01(), alpha: 1.0)
self.canvas.backgroundColor = randomColor
}
}
let player = AudioPlayer("Loop.aif")
func audioPlayer() {
player?.loops = true
player?.play()
}
func movie() {
let movie = Movie("halo.mp4")
movie?.center = canvas.center
canvas.add(movie)
movie?.loops = false
movie?.play()
}
func generator() {
let image = Image(frame: Rect(0,0,100,100))
var checkerBoard = Checkerboard()
checkerBoard.colors = [black, white]
image.generate(checkerBoard)
image.center = canvas.center
canvas.add(image)
}
func filter() {
let image = Image("chop")
image?.center = canvas.center
canvas.add(image)
var dotScreen = DotScreen()
dotScreen.width = 10.0
image?.apply(dotScreen)
}
func patternImages() {
let r = Rectangle(frame: Rect(0,0,96,96))
r.center = canvas.center
r.fillColor = Color("pattern1")
r.lineWidth = 20.0
r.strokeColor = Color("pattern2")
canvas.add(r)
}
func image() {
let image = Image("chop")!
image.center = canvas.center
canvas.add(image)
}
func colorsCustom() {
canvas.backgroundColor = Color(red: 1, green: 1, blue: 1, alpha: 1.0)
}
func colorsC4() {
let r = Rectangle(frame: Rect(0,0,100,100))
r.center = canvas.center
r.lineWidth = 8
r.strokeColor = C4Blue
r.fillColor = C4Pink
canvas.add(r)
canvas.backgroundColor = C4Purple
}
func textShape() {
let string = "C4"
let textShape = TextShape(text: string)!
textShape.center = canvas.center
canvas.add(textShape)
let anim = ViewAnimation(duration: 0.25) {
textShape.text = "4C"
textShape.center = self.canvas.center
}
anim.delay = 1.0
anim.animate()
}
func wedge() {
let wedge = Wedge(center: canvas.center, radius: 50, start: 1.25 * M_PI, end: 1.75 * M_PI)
canvas.add(wedge)
}
func arc() {
let arc = Arc(center: canvas.center, radius: 50, start: M_PI, end: 2 * M_PI)
canvas.add(arc)
}
func polygon() {
let points = [Point(),Point(100,100),Point(200,0), Point(300,100)]
let polygon = Polygon(points)
polygon.center = canvas.center
canvas.add(polygon)
}
func triangle() {
let points = [Point(),Point(100,100),Point(200,0)]
let triangle = Triangle(points)
triangle.center = canvas.center
canvas.add(triangle)
}
func ellipse() {
let ellipse = Ellipse(frame: Rect(0,0,200,100))
ellipse.center = canvas.center
canvas.add(ellipse)
}
func line() {
let points = (Point(), Point(100,100))
let line = Line(points)
line.center = canvas.center
line.border.width = 1.0
line.border.color = red
canvas.add(line)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment