求最接近2的倍数的方法
本文关键字:方法 最接近 | 更新日期: 2023-09-27 18:02:10
我需要创建一个有效的函数来匹配这个占用空间:
public static double NearestAngle(this double currentAngle, double targetAngle);
,其中返回值为targetAngle +/- n*2pi
。返回值应使自身与currentAngle
之间的绝对差值最小。我如何在c#中有效地做到这一点?我想要避免循环,因为输入可能相距很多圈。
return targetAngle + Math.Round((currentAngle - targetAngle)/(2*Math.Pi))*2*Math.Pi;