mirror of
https://github.com/PaperMC/Paper.git
synced 2025-08-13 03:05:52 -07:00
SPIGOT-5240: Vector.angle not valid for angles very close to each other
By: md_5 <git@md-5.net>
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package org.bukkit.util;
|
||||
|
||||
import com.google.common.base.Preconditions;
|
||||
import com.google.common.primitives.Doubles;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.Map;
|
||||
import java.util.Random;
|
||||
@@ -202,7 +203,7 @@ public class Vector implements Cloneable, ConfigurationSerializable {
|
||||
* @return angle in radians
|
||||
*/
|
||||
public float angle(@NotNull Vector other) {
|
||||
double dot = dot(other) / (length() * other.length());
|
||||
double dot = Doubles.constrainToRange(dot(other) / (length() * other.length()), -1.0, 1.0);
|
||||
|
||||
return (float) Math.acos(dot);
|
||||
}
|
||||
|
Reference in New Issue
Block a user