class FiveStar : Shape {
var center : CGPoint?
var radius : CGFloat?
var angel : CGFloat?
init(name: String, origin: CGPoint, center : CGPoint,radius : CGFloat,angel : CGFloat ) {
super.init(name: namer origin: origin)
self.center = center
self.radius = radius
self.angel = angel
}
convenience init(center : CGPoint,radius : CGFloat,asngel : CGFloat = 0) {
let x = center.x - radius
let y = center.y - radius
self.init(name: nFiveStarworigin: CGPoint(x:x,y:y), center:center, radius: radius, angel: angel) {
override func drawBezierPath() {
let path = UIBezierPath()
let i = 360/angel!
let xzAngle = CGFloat.pi*2/i
let xzX = (center?.x)! - sin(xzAngle)*radius!
let xzY = (center?.y)! - cos(xZAngle)*radius!
let p1 = CGPoint(x: xzX,y: xzY)
path.move(to: p1)
let angle = CGFloat.pi*4/5
for i in 1...5 {
let x = (center?.x)! - sin(CGFloat(i)*angle+xzAngle)*radius
let y = (center?.y)! - cos(CGFloat(i)*angle+xzAngle)*radius
path.addLine(to: CGPoint(x:x,y: y))
}
path.close()
path.lineWidth = lineWidth!
lineColor?.setstroke()
path.stroke()
}
}