added operators +, - to Vector, added inverse transform instance variable to shapes/Shape, changed Sphere to use its inverse transform when calculating intersections and normals, removed simplistic lighting from main/Scene

git-svn-id: svn://anubis/fart/trunk@47 7f9b0f55-74a9-4bce-be96-3c2cd072584d
This commit is contained in:
Josh Holtrop committed 2009-01-26 14:02:15 +00:00
1 parent dad8497bf4
commit 7d7ec130e0
5 files changed
+40 -25

No files matched your search

+18
View File
@@ -61,3 +61,21 @@ Vector operator*(const Vector & v1, const Vector & v2)
result[2] = v1[0] * v2[1] - v1[1] * v2[0];
return result;
}
Vector operator+(const Vector & v1, const Vector & v2)
{
Vector result;
result[0] = v1[0] + v2[0];
result[1] = v1[1] + v2[1];
result[2] = v1[2] + v2[2];
return result;
}
Vector operator-(const Vector & v1, const Vector & v2)
{
Vector result;
result[0] = v1[0] - v2[0];
result[1] = v1[1] - v2[1];
result[2] = v1[2] - v2[2];
return result;
}
+2
View File
@@ -22,5 +22,7 @@ class Vector
std::ostream & operator<<(std::ostream & out, const Vector & v);
double operator%(const Vector & v1, const Vector & v2);
Vector operator*(const Vector & v1, const Vector & v2);
Vector operator+(const Vector & v1, const Vector & v2);
Vector operator-(const Vector & v1, const Vector & v2);
#endif