Fix bug in ellipsoid.

This commit is contained in:
Kalle Bladin
2016-04-27 12:05:28 -04:00
parent 57c8ca58bf
commit 82ab4cc3d2
3 changed files with 13 additions and 9 deletions
@@ -41,13 +41,13 @@ namespace openspace {
(_radii.y * _radii.y),
(_radii.z * _radii.z)),
Vec3( // _oneOverRadiiSquared
1.0 / _cachedValues._radiiSquared.x,
1.0 / _cachedValues._radiiSquared.y,
1.0 / _cachedValues._radiiSquared.z),
1.0 / (_radii.x * _radii.x),
1.0 / (_radii.y * _radii.y),
1.0 / (_radii.z * _radii.z)),
Vec3( // _radiiToTheFourth
_cachedValues._radiiSquared.x * _cachedValues._radiiSquared.x,
_cachedValues._radiiSquared.y * _cachedValues._radiiSquared.y,
_cachedValues._radiiSquared.z * _cachedValues._radiiSquared.z),})
_radii.x * _radii.x * _radii.x * _radii.x,
_radii.y * _radii.y * _radii.y * _radii.y,
_radii.z * _radii.z * _radii.z * _radii.z),})
{
}
+3 -2
View File
@@ -74,8 +74,6 @@ public:
Vec3 geodetic2ToCartesian(const Geodetic2& geodetic2) const;
Vec3 geodetic3ToCartesian(const Geodetic3& geodetic3) const;
private:
struct EllipsoidCache
{
const Vec3 _radiiSquared;
@@ -85,6 +83,9 @@ private:
const Vec3 _radii;
const EllipsoidCache _cachedValues;
private:
};
} // namespace openspace
+4 -1
View File
@@ -38,5 +38,8 @@ using namespace openspace;
TEST_F(EllipsoidTest, GeodeticSurfaceNormal) {
Ellipsoid ellipsoid(Vec3(1, 1, 1));
ellipsoid.geodeticSurfaceNormal(Vec3(0, 0, 1));
Vec3 geodeticNormal = ellipsoid.geodeticSurfaceNormal(Vec3(0, 0, 1));
Vec3 expectedNormal = Vec3(0, 0, 1);
ASSERT_EQ(geodeticNormal, expectedNormal);
}