采用calyer画多边形

一直想用calyer做点什么东西,昨天有空探究了下calyer这个东西,如果做动画在calyer层上需要增加新的layer跟uiview addsubview有点类似。但是动画的显示还是有不同之处的。下面上代码显示的结果是一个正五边形
//绘画一个多边形(五边形)
CGFloat x0 = 160.0f;
CGFloat y0 = 200.0f;
CGFloat x ;
CGFloat y ;
CGFloat radius = 150.0f;
UIBezierPath *movePath = [UIBezierPath bezierPath];
CGFloat huDuFromdu = M_PI/(180/72.0);
for (NSInteger i=0; i<6; i++) {
//cos在ios中不能直接用需要cosf转换的弧度中间转换下
x = x0 + radius * cosf(i*M_PI/(180/du));
y = y0 - radius * sinf(i*M_PI/(180/du));
if (i==0) {
[movePath moveToPoint:CGPointMake(x, y)];
}
else
{
[movePath addLineToPoint:CGPointMake(x, y)];
}
}
[movePath closePath];

//添加渲染
CAShapeLayer *oneLayer = [CAShapeLayer layer];
oneLayer.fillColor = [UIColor yellowColor].CGColor;
oneLayer.path = movePath.CGPath;
oneLayer.strokeColor = [UIColor orangeColor].CGColor;
oneLayer.lineWidth=2;
[self.view.layer addSublayer:oneLayer];
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值