我有一个圆圈,我从-pi / 2到3(pi)/ 2开始画一个完整的圆圈。在它的顶部,我有一个基于它接收的十进制值围绕圆圈的弧。所以0.5的值应该填满圆圈,0.9应该围绕圆圈90%等等。
我知道弧线的起始角度与第一个圆圈(即-pi / 2)相同,但我如何计算我的终止角度?
答案 0 :(得分:2)
让我们举个例子。假设您的百分比系数为0.5
。整圆是2*pi
弧度。现在乘以你的百分比系数:0.5
即2*pi*0.5
弧度(恰好是pi
)。但您想从-pi/2
开始,请添加:pi
加-pi/2
为pi/2
。因此,您可以从-pi/2
开始,到pi/2
结束。
现在让我们来做0.9
示例。它是一样的:您可以从-pi/2
开始,到2*pi*0.9 - pi/2
结束。
作为一个完整性检查,这是我在使用这些数字实际绘制 0.9
示例时得到的结果(这是Swift代码,但我不认为这将证明是任何困难):
let b = UIBezierPath(arcCenter: CGPoint(x:100,y:100), radius: 50,
startAngle: -.pi/2, endAngle: 2*(.pi)*0.9 - .pi/2,
clockwise: true)
这是一张图表,您可以用它来进行进一步的健全性检查(但请注意,因为他们选择使数字逆时针增长):
请记住,如果需要,您可以随时添加或减去2 * pi以将相同的值从负值转换为正值,反之亦然。因此-pi / 2和3 * pi / 2最终将你带到圈子的同一个地方。