Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import UIKit
- class addShape: UIView {
- let context = UIGraphicsGetCurrentContext();
- override func drawRect(rect: CGRect) {
- CGContextSetLineWidth(context, 3.0)
- //CGContextSetStrokeColorWithColor(context, UIColor.purpleColor().CGColor)
- CGContextStrokeEllipseInRect(context, rect)
- UIColor.redColor().set()
- //Actually draw the path
- CGContextStrokePath(context)
- }
- override func drawRect(rect: CGRect) {
- ////UTUBE
- UIGraphicsBeginImageContextWithOptions(CGSize(width: 512, height: 512), false, 0)
- // Define the center point of the view where you’ll rotate the arc around
- let center = CGPoint(x:bounds.width/2, y: bounds.height/2)
- // Calculate the radius based on the max dimension of the view.
- let radius: CGFloat = max(bounds.width, bounds.height)
- // Define the thickness of the arc.
- let arcWidth: CGFloat = 115
- /////FIRST Shape
- // Define the start and end angles for the arc.
- let startAngle: CGFloat = 2 * π
- let endAngle: CGFloat = π / 4
- // Create a path based on the center point, radius, and angles you just defined.
- var path = UIBezierPath(arcCenter: center,
- radius: radius/2 - arcWidth/2,
- startAngle: startAngle,
- endAngle: endAngle,
- clockwise: true)
- // Set the line width and color before finally stroking the path.
- path.lineWidth = arcWidth
- counterColor.setStroke()
- path.stroke()
- // Second Shape
- let startAngle2: CGFloat = π / 4
- let endAngle2: CGFloat = π / 2
- // Create a path based on the center point, radius, and angles you just defined.
- path = UIBezierPath(arcCenter: center,
- radius: radius/2 - arcWidth/2,
- startAngle: startAngle2,
- endAngle: endAngle2,
- clockwise: true)
- path.lineWidth = arcWidth
- UIColor.greenColor().setStroke()
- path.stroke()
- // 3rd Shape
- let startAngle3: CGFloat = π / 2
- let endAngle3: CGFloat = 3 * π / 4
- // Create a path based on the center point, radius, and angles you just defined.
- path = UIBezierPath(arcCenter: center,
- radius: radius/2 - arcWidth/2,
- startAngle: startAngle3,
- endAngle: endAngle3,
- clockwise: true)
- path.lineWidth = arcWidth
- UIColor.blueColor().setStroke()
- path.stroke()
- // 4th Shape
- let startAngle4: CGFloat = 3 * π / 4
- let endAngle4: CGFloat = π
- // Create a path based on the center point, radius, and angles you just defined.
- path = UIBezierPath(arcCenter: center,
- radius: radius/2 - arcWidth/2,
- startAngle: startAngle4,
- endAngle: endAngle4,
- clockwise: true)
- path.lineWidth = arcWidth
- UIColor.redColor().setStroke()
- path.stroke()
- // 5th Shape
- let startAngle5: CGFloat = π
- let endAngle5: CGFloat = 5 * π / 4
- // Create a path based on the center point, radius, and angles you just defined.
- path = UIBezierPath(arcCenter: center,
- radius: radius/2 - arcWidth/2,
- startAngle: startAngle5,
- endAngle: endAngle5,
- clockwise: true)
- path.lineWidth = arcWidth
- UIColor.yellowColor().setStroke()
- path.stroke()
- // 6th Shape
- let startAngle6: CGFloat = 5 * π / 4
- let endAngle6: CGFloat = 3 * π / 2
- // Create a path based on the center point, radius, and angles you just defined.
- path = UIBezierPath(arcCenter: center,
- radius: radius/2 - arcWidth/2,
- startAngle: startAngle6,
- endAngle: endAngle6,
- clockwise: true)
- path.lineWidth = arcWidth
- UIColor.grayColor().setStroke()
- path.stroke()
- // 7th Shape
- let startAngle7: CGFloat = 3 * π / 2
- let endAngle7: CGFloat = 7 * π / 4
- // Create a path based on the center point, radius, and angles you just defined.
- path = UIBezierPath(arcCenter: center,
- radius: radius/2 - arcWidth/2,
- startAngle: startAngle7,
- endAngle: endAngle7,
- clockwise: true)
- path.lineWidth = arcWidth
- UIColor.purpleColor().setStroke()
- path.stroke()
- // 8th Shape
- let startAngle8: CGFloat = 7 * π / 4
- let endAngle8: CGFloat = 2 * π
- // Create a path based on the center point, radius, and angles you just defined.
- path = UIBezierPath(arcCenter: center,
- radius: radius/2 - arcWidth/2,
- startAngle: startAngle8,
- endAngle: endAngle8,
- clockwise: true)
- path.lineWidth = arcWidth
- UIColor.lightGrayColor().setStroke()
- path.stroke()
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement