<span style="font-family: Arial, Helvetica, sans-serif;">void CGContextAddArc(CGContextRef __nullable c, CGFloat x, CGFloat y, </span><span style="font-family: Arial, Helvetica, sans-serif;">CGFloat radius, CGFloat startAngle, CGFloat endAngle, int clockwise)</span>
该函数在画圆或扇形的时候会用到,其中的 startAngle、endAngle这两个参数也是用弧度表示,顺便提一下clockwise参数如果设置0,表示顺时针画弧,1则为逆时针。
CGAffineTransform CGAffineTransformMakeRotation(CGFloat angle)
这是一个关于视图旋转的函数(通过设置UIView的transform属性),其中angle参数实际是弧度,比如要旋转90°,就设置此参数为M_PI_2,M_PI_2是π/2。
因此,我们在知道角度的情况下,要转化成相应的弧度,才会达到预想的效果,反之亦然。一下就是角度与弧度相互转化的方法。
/* 弧度转角度 */
#define SK_RADIANS_TO_DEGREES(radian) \
((radian) * (180.0 / M_PI))
/* 角度转弧度 */
#define SK_DEGREES_TO_RADIANS(angle) \
((angle) / 180.0 * M_PI)