//Vector.h
extern const double uZero;
class Vector3
{
float x, y, z;
public:
Vector3() { x = 0; y = 0; z = 0; };
Vector3(float x1, float y1, float z1) { x = x1, y = y1, z = z1; }
Vector3 operator+(Vector3 &c);
Vector3 operator-(Vector3 &c);
Vector3 operator*(Vector3 &c);
Vector3 operator/(Vector3 &c);
void operator=(Vector3 &c);
float length();
float dot(const Vector3 &c);
void normalize();
Vector3 crossProduct(const Vector3 &v);
void printVec3();
~Vector3();
};
//Vector.cpp
#include "Vector.h"
const double uZero = 1e-6;
Vector3 Vector3::operator+(Vector3 & c)
{
return Vector3(x+c.x,y+c.y,z+c.z);
}
Vector3 Vector3::operator-(Vector3 & c)
{
return Vector3(x-c.x,y-c.y,z-c.z);
}
Vector3 Vector3::operator*(Vector3 & c)
{
return Vector3(x*c.x,y*c.y,z*c.z);
}
Vector3 Vector3::operator/(Vector3 &a