容差(epsilon)代替完全相等(equals)解决相同数据复杂计算后,高精度出现误差的情况
场景:three中方向向量运算后相同数值可能会在高精度时有误差,用向量的equals会导致误判,因此可引入容差对比,来规避此问题
function almostEquals(v1, v2, epsilon = 1e-6) {
return (
Math.abs(v1.x - v2.x) < epsilon &&
Math.abs(v1.y - v2.y) < epsilon &&
Math.abs(v1.z - v2.z) < epsilon
);
}

浙公网安备 33010602011771号