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:
1 parent
dad8497bf4
commit
7d7ec130e0
5 files changed
+40
-25
No files matched your search
@@ -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;
|
||||
}
|
||||
@@ -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
|
||||
Reference in new issue
Block a user