CGContextAddArc用法

原文链接 http://differentisnotdifferent.diandian.com/post/2012-07-30/40032320467

CGContextAddArc(CGContextRef c, CGFloat x, CGFloat y, // 圆心(x,y)
CGFloat radius, // 半径
CGFloat startAngle, CGFloat endAngle, // 开始、结束弧度
int clockwise // 绘制方向,YES:逆时针;NO:顺时针
)

用法心得:
1. 弧度
中心点右侧 弧度为 0
中心点下方 弧度为 M_PI_2
中心点左侧 弧度为 M_PI
中心点上方 弧度为 -M_PI_2

2. 绘制x弧度圆
所谓x弧度圆,就是不满2π的圆弧。
比如 想画一个 缺口朝下&缺口弧度30度 的x弧度圆
选择逆时针画法:
startAngle = M_PI_2 - (15/180*M_PI);
endAngle = M_PI_2 + (diff/180*M_PI);
clockwise = YES;
选择顺时针画法:
startAngle = M_PI_2 + (15/180*M_PI);
endAngle = M_PI_2 - (diff/180*M_PI);
clockwise = NO;

3. 链接文章中提到的图解(自己不会画图。。。)
CGContextAddArc(context, 160, 200, 100, 0, 45*(M_PI/180), 0);
所以对上面这对代码的解释是这样的:
1)startAngle为0,绿色箭头的地方。
2)endAngle为45,黄色箭头的地方。
3)clockwise为0,按照红色箭头往下绘制图形。
4)所以效果就是红色的扇形。
补充:如果clockwise为1,则是蓝色部分区域。
[img]http://dl2.iteye.com/upload/attachment/0089/6997/d184a489-ccd1-32ba-9dc2-39ba796a1379.png[/img]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值