-//\r
-// VECTOR.H - vector class definition\r
-//\r
-// by James L. Hammons\r
-// (C) 2003 Underground Software\r
-//\r
-\r
-#ifndef __VECTOR_H__\r
-#define __VECTOR_H__\r
-\r
-struct vector\r
-{\r
- double x, y, z;\r
-\r
- vector(double a1=0.0, double b1=0.0, double c1=0.0, double a2=0.0, double b2=0.0, double c2=0.0);\r
- vector(const vector &v1, const vector &v2);\r
- vector& operator=(const vector &v);\r
- bool operator==(const vector &v);\r
- void unitize(void);\r
- vector operator*(const vector &v); // Cross product: "this" x "v"\r
- vector operator+(const vector &v);\r
- vector operator-(const vector &v);\r
- double dot(const vector &v1, const vector &v2);\r
- double dot(const vector &v);\r
- double distance(const vector &v); // Pythagoras extended to 3 dimensions\r
- double length(void);\r
- void operator*=(const double &d);\r
- void operator/=(const double &d);\r
- void operator+=(const vector &v);\r
- void operator-=(const vector &v);\r
- vector operator*(const double &d); // Scale vector by amount\r
- void zero(const double epsilon);\r
-};\r
-\r
-#endif // __VECTOR_H__\r
+//
+// VECTOR.H - vector class definition
+//
+// by James L. Hammons
+// (C) 2003 Underground Software
+//
+
+#ifndef __VECTOR_H__
+#define __VECTOR_H__
+
+struct vector
+{
+ double x, y, z;
+
+ vector(double a1=0.0, double b1=0.0, double c1=0.0, double a2=0.0, double b2=0.0, double c2=0.0);
+ vector(const vector &v1, const vector &v2);
+ vector& operator=(const vector &v);
+ bool operator==(const vector &v);
+ void unitize(void);
+ vector operator*(const vector &v); // Cross product: "this" x "v"
+ vector operator+(const vector &v);
+ vector operator-(const vector &v);
+ double dot(const vector &v1, const vector &v2);
+ double dot(const vector &v);
+ double distance(const vector &v); // Pythagoras extended to 3 dimensions
+ double length(void);
+ void operator*=(const double &d);
+ void operator/=(const double &d);
+ void operator+=(const vector &v);
+ void operator-=(const vector &v);
+ vector operator*(const double &d); // Scale vector by amount
+ void zero(const double epsilon = 1.0e-6);
+};
+
+#endif // __VECTOR_H__