ios-UIBezierPath按逆时针方向的百分比,以弧形开始为垂直向下位置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ios-UIBezierPath按逆时针方向的百分比,以弧形开始为垂直向下位置相关的知识,希望对你有一定的参考价值。

我试图创建逆时针UIBezierPath,弧的起点是负y轴(仅用于可视化)。 enter image description here

let arcPathForLayer = UIBezierPath(arcCenter: upperCenterPoint, radius: radius, startAngle: arcPathStartAngle, endAngle: (arcPathEndAngle), clockwise: false)

通常对于顺时针UIBezierPath,开始和结束角度分别为0.0pi和2.0pi-如果路径是从正x轴开始。 但是对于这种情况,UIBezierPath是逆时针的,并且弧的起点是负y轴 - 起始角度和结束角度很难混淆计算。所以我会发布相同的答案。

答案

以下是解决方案的可视化: here is the picture

所以起始角度是0.5pi,结束是-1.5pi, 现在用于绘制25%的笔划 - >结束角度的值= 0pi, 为50% - >结束角度= -0.5pi, 在100%的相同注释 - >结束角度= -1.5pi

这是计算相同的公式:

endAngle = (0.5 - (2 * percentageForProgress)) * .pi

以上是关于ios-UIBezierPath按逆时针方向的百分比,以弧形开始为垂直向下位置的主要内容,如果未能解决你的问题,请参考以下文章

约瑟夫环问题

NOIP2012P寻宝(于2018.2.12)

luogu P1205 方块转换

约瑟夫环问题的思考

仪表名词归纳

数据结构--线性表及其应用 约瑟夫环