我需要创建一个匹配此足迹的高效函数:
public static double NearestAngle(this double currentAngle, double targetAngle);
返回值为targetAngle +/- n*2pi
。返回值应最小化其自身与currentAngle
之间的绝对差异。我怎样才能在C#中有效地做到这一点?我想避免循环,因为输入可以分开很多圈。
答案 0 :(得分:0)
return targetAngle + Math.Round((currentAngle - targetAngle)/(2*Math.Pi))*2*Math.Pi;