diff options
| author | Franklin Wei <me@fwei.tk> | 2019-02-02 23:02:12 -0500 |
|---|---|---|
| committer | Franklin Wei <me@fwei.tk> | 2019-02-02 23:02:12 -0500 |
| commit | 79a83c2cbee5adca798b8976b2a39ecd6ffd39af (patch) | |
| tree | 379523f81d3e7dc02c62ca1505376b8d0bc6b30e /vec3.h | |
| download | fieldviz-79a83c2cbee5adca798b8976b2a39ecd6ffd39af.zip fieldviz-79a83c2cbee5adca798b8976b2a39ecd6ffd39af.tar.gz fieldviz-79a83c2cbee5adca798b8976b2a39ecd6ffd39af.tar.bz2 fieldviz-79a83c2cbee5adca798b8976b2a39ecd6ffd39af.tar.xz | |
initial commit
basic B field integrator
Diffstat (limited to 'vec3.h')
| -rw-r--r-- | vec3.h | 27 |
1 files changed, 27 insertions, 0 deletions
@@ -0,0 +1,27 @@ +#include <iostream> +class vec3 { + public: + double 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 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+=(const vec3 &other); + const vec3 &operator-=(const vec3 &other); + double magnitude() const; + double magnitudeSquared() const; + vec3 normalize() const; + double dot(const vec3 &other) const; + vec3 cross(const vec3 &other) const; +}; + +std::ostream &operator<<(std::ostream &output, const vec3 &v); |