MPQC  3.0.0-alpha
sc::vec3 Class Reference

Public Member Functions

 vec3 (const double x, const double y, const double z)
 
 vec3 (const double d)
 
 vec3 (const vec3 &v)
 
 vec3 (const vec2 &v)
 
 vec3 (const vec2 &v, double d)
 
 vec3 (const vec4 &v)
 
 vec3 (const vec4 &v, int dropAxis)
 
vec3operator= (const vec3 &v)
 
vec3operator+= (const vec3 &v)
 
vec3operator-= (const vec3 &v)
 
vec3operator*= (const double d)
 
vec3operator/= (const double d)
 
double & operator[] (int i)
 
const double & operator[] (int i) const
 
double length ()
 
double length2 ()
 
vec3normalize ()
 
vec3apply (V_FCT_PTR fct)
 

Protected Attributes

double n [3]
 

Friends

class vec2
 
class vec4
 
class mat3
 
vec3 operator- (const vec3 &v)
 
vec3 operator+ (const vec3 &a, const vec3 &b)
 
vec3 operator- (const vec3 &a, const vec3 &b)
 
vec3 operator* (const vec3 &a, const double d)
 
vec3 operator* (const double d, const vec3 &a)
 
vec3 operator* (const mat4 &a, const vec3 &v)
 
vec3 operator* (const vec3 &v, const mat4 &a)
 
double operator* (const vec3 &a, const vec3 &b)
 
vec3 operator/ (const vec3 &a, const double d)
 
vec3 operator^ (const vec3 &a, const vec3 &b)
 
int operator== (const vec3 &a, const vec3 &b)
 
int operator!= (const vec3 &a, const vec3 &b)
 
std::ostream & operator<< (std::ostream &s, vec3 &v)
 
std::istream & operator>> (std::istream &s, vec3 &v)
 
void swap (vec3 &a, vec3 &b)
 
vec3 min (const vec3 &a, const vec3 &b)
 
vec3 max (const vec3 &a, const vec3 &b)
 
vec3 prod (const vec3 &a, const vec3 &b)
 
vec2 operator* (const mat3 &a, const vec2 &v)
 
mat3 operator* (const mat3 &a, const mat3 &b)
 

The documentation for this class was generated from the following file:

Generated at Sun Jan 26 2020 23:24:14 for MPQC 3.0.0-alpha using the documentation package Doxygen 1.8.16.