Fix precision error
This commit is contained in:
parent
4591aef901
commit
608c45c1a7
@ -8,7 +8,7 @@
|
||||
|
||||
template <>
|
||||
AngleOf<signed short>::AngleOf(int angle) {
|
||||
signed long long_angle = (signed short)angle * 65535;
|
||||
signed long long_angle = (signed short)angle * 65536;
|
||||
this->value = (signed short)(long_angle / 360);
|
||||
}
|
||||
|
||||
|
@ -146,15 +146,15 @@ TEST(Spherical16, Addition) {
|
||||
|
||||
v2 = Spherical16(1, -45, 0);
|
||||
r = v1 + v2;
|
||||
EXPECT_NEAR(r.distance, sqrtf(2), 1.0e-02) << "Addition(1 -45 0)";
|
||||
EXPECT_FLOAT_EQ(r.distance, sqrtf(2)) << "Addition(1 -45 0)";
|
||||
EXPECT_FLOAT_EQ(r.horizontalAngle, 0) << "Addition(1 -45 0)";
|
||||
EXPECT_FLOAT_EQ(r.verticalAngle, 0) << "Addition(1 -45 0)";
|
||||
|
||||
v2 = Spherical16(1, 0, 90);
|
||||
r = v1 + v2;
|
||||
EXPECT_NEAR(r.distance, sqrtf(2), 1.0e-02) << "Addition(1 0 90)";
|
||||
EXPECT_NEAR(r.horizontalAngle, 45, 1.0e-01) << "Addition(1 0 90)";
|
||||
EXPECT_NEAR(r.verticalAngle, 45, 1.0e-02) << "Addition(1 0 90)";
|
||||
EXPECT_FLOAT_EQ(r.distance, sqrtf(2)) << "Addition(1 0 90)";
|
||||
EXPECT_FLOAT_EQ(r.horizontalAngle, 45) << "Addition(1 0 90)";
|
||||
EXPECT_FLOAT_EQ(r.verticalAngle, 45) << "Addition(1 0 90)";
|
||||
}
|
||||
|
||||
#endif
|
Loading…
x
Reference in New Issue
Block a user