Apache Commons有一个:
http://commons.apache.org/proper/commons-
math/javadocs/api-3.6.1/org/apache/commons/math3/util/MathUtils.html#normalizeAngle(double,double)
归一化-π和+π之间的角度
a = MathUtils.normalizeAngle(a, 0.0);
并查看源代码,您可以使用此代码来复制它(它们使用自己的代码,
FastMath.floor但是如果您想在没有外部库的情况下使用它):
theta - TWO_PI * Math.floor((theta + Math.PI) / TWO_PI)
- 来源在这里:[https](https://github.com/apache/commons-
- math/blob/53ec46ba272e23c0c96ada42f26f4e70e96f3115/src/main/java/org/apache/commons/math4/util/MathUtils.java#L107)
- //github.com/apache/commons-
math/blob/53ec46ba272e23c0c96ada42f26f4e70e96f3115/src/main/java/org/apache/commons/math4/util/MathUtils.java#L107
敬请以后的读者注意 :该方法(2017年6月)刚刚从最新的commons-math
4.x代码库中删除。如果您在此之后使用版本,则需要改用commons-
numbers(一旦发布)-当前:
a = PlaneAngleRadians.normalizeBetweenMinusPiAndPi(a);
要么
a = PlaneAngleRadians.normalize(a, 0.0);
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)