23 Vec3(
double _x,
double _y,
double _z) :
x(_x),
y(_y),
z(_z) {}
29 inline double length()
const {
return sqrt(
x *
x +
y *
y +
z *
z); }
33 return Vec3(
x / l,
y / l,
z / l);
43 return Vec3(
x / a,
y / a,
z / a);
55 return Vec3(
x * a,
y * a,
z * a);
65 return x * v.
x +
y * v.
y +
z * v.
z;
Vec3 operator*(const double &a) const
Vec3 cross(const Vec3 &v) const
void operator+=(const Vec3 &v)
Vec3 operator/(const double &a) const
Vec3(double _x, double _y, double _z)
double dot(const Vec3 &v) const
Vec3 operator-(const Vec3 &v) const
Vec3 operator+(const Vec3 &v) const