//
// Pie.swift
// 小黄人
//
// Created by admin on 16/1/23.
// Copyright © 2016年 jin. All rights reserved.
//
import UIKit
class Pie: UIView {
var sections:[CGFloat] = [20,32,55,66,10,66,77,66,33,77,92,11,12]
var colors:[UIColor] = [UIColor.whiteColor(),UIColor.blackColor(),UIColor.blueColor(),UIColor.brownColor(),UIColor.darkGrayColor(),UIColor.darkTextColor(),UIColor.redColor(),UIColor.purpleColor(),UIColor.grayColor(),UIColor.greenColor(),UIColor.yellowColor(),UIColor.orangeColor(),UIColor.magentaColor(),UIColor.lightGrayColor(),UIColor.purpleColor()]
override func drawRect(rect: CGRect) {
let pie = UIGraphicsGetCurrentContext()
var sum:CGFloat = 0
sections.forEach({sum += $0})
print(sum)
let radius:CGFloat = 100
let piePoint = CGPointMake(radius, radius)
var startAngle:CGFloat = 0
var endAngle:CGFloat = 0
for var i = 0;i < sections.count;i++
{
startAngle = endAngle
endAngle += (sections[i] / sum) * CGFloat(M_PI * 2)
CGContextMoveToPoint(pie, piePoint.x, piePoint.y)
CGContextAddArc(pie, radius, radius, radius, startAngle, endAngle, 0)// 颜色显示不正确,原来是顺时针的设置问题,这个坑得记住,0是顺时针
colors[i].set()
CGContextFillPath(pie)
}
}
}