#ifndef DELTA_MATH #define DELTA_MATH class DeltaVector2 { public: float x, y; DeltaVector2(float xval, float yval); DeltaVector2(); DeltaVector2 operator+(const DeltaVector2& other) const; DeltaVector2 operator-(const DeltaVector2& other) const; DeltaVector2 operator*(float a) const; DeltaVector2& operator+=(const DeltaVector2& other); DeltaVector2& operator-=(const DeltaVector2& other); float distanceToVector(const DeltaVector2& vec) const; float distanceToPos(float x, float y) const; float dotProduct(const DeltaVector2& vec) const; float angleTo(const DeltaVector2& vec) const; float length() const; }; class DeltaVector3 { public: float x, y, z; DeltaVector3(float xval, float yval, float zval); DeltaVector3(); float distanceToVector(const DeltaVector3 &vec) const; float distanceToPos(float x, float y) const; float dotProduct(const DeltaVector3 &vec) const; float angleTo(const DeltaVector3 &vec) const; float length() const; }; float getDeterminant(const DeltaVector2 &pointA, const DeltaVector2 &pointB, const DeltaVector2 &candidate); #endif