diff options
| author | Franklin Wei <me@fwei.tk> | 2019-02-04 18:16:49 -0500 |
|---|---|---|
| committer | Franklin Wei <me@fwei.tk> | 2019-02-04 18:16:49 -0500 |
| commit | cf7eff7aab751fd1b599d967ee156c7ebb61cbbd (patch) | |
| tree | 04c414b2c7b7b42ea80e157458ac5228e04e45dd /vec3.h | |
| parent | f02c73a1cde15f55eac0ee2ecd0a10b6778d8b6c (diff) | |
| download | fieldviz-cf7eff7aab751fd1b599d967ee156c7ebb61cbbd.zip fieldviz-cf7eff7aab751fd1b599d967ee156c7ebb61cbbd.tar.gz fieldviz-cf7eff7aab751fd1b599d967ee156c7ebb61cbbd.tar.bz2 fieldviz-cf7eff7aab751fd1b599d967ee156c7ebb61cbbd.tar.xz | |
Work on adding toroid
Diffstat (limited to 'vec3.h')
| -rw-r--r-- | vec3.h | 28 |
1 files changed, 16 insertions, 12 deletions
@@ -1,30 +1,34 @@ #ifndef VEC3_H #define VEC3_H #include <iostream> + +typedef float scalar; + class vec3 { public: - double v[3]; + scalar v[3]; public: vec3(); - vec3(double x); - vec3(double x, double y, double z); - double &operator[](int index); - double operator[](int index) const; - vec3 operator*(double scale) const; - vec3 operator/(double scale) const; + vec3(scalar x); + vec3(scalar x, scalar y, scalar z); + scalar &operator[](int index); + scalar operator[](int index) const; + vec3 operator*(scalar scale) const; + vec3 operator/(scalar scale) const; vec3 operator+(const vec3 &other) const; vec3 operator-(const vec3 &other) const; vec3 operator-() const; - const vec3 &operator*=(double scale); - const vec3 &operator/=(double scale); + const vec3 &operator*=(scalar scale); + const vec3 &operator/=(scalar scale); const vec3 &operator+=(const vec3 &other); const vec3 &operator-=(const vec3 &other); - double magnitude() const; - double magnitudeSquared() const; + scalar magnitude() const; + scalar magnitudeSquared() const; vec3 normalize() const; - double dot(const vec3 &other) const; + scalar dot(const vec3 &other) const; vec3 cross(const vec3 &other) const; }; +vec3 operator*(scalar scale, const vec3 &v); std::ostream &operator<<(std::ostream &output, const vec3 &v); #endif |