Clipper
|
3-vector class More...
#include <clipper_types.h>
Public Member Functions | |
Vec3 () | |
null constructor | |
Vec3 (const T &v0, const T &v1, const T &v2) | |
constructor: from individual values | |
template<class TT > | |
Vec3 (const Vec3< TT > &v) | |
constructor: copy/convert | |
bool | equals (const Vec3< T > &v, const T &tol) const |
test equality | |
const T & | operator[] (const int &i) const |
get element | |
T & | operator[] (const int &i) |
set element | |
Vec3< T > | unit () const |
return unit vector with same direction as this vector | |
bool | is_null () const |
test for null vector | |
String | format () const |
return formatted String representation | |
const Vec3< T > & | operator+= (const Vec3< T > &v) |
add another vector to this one | |
const Vec3< T > & | operator-= (const Vec3< T > &v) |
subtract another vector from this one | |
Static Public Member Functions | |
static Vec3< T > | zero () |
return zero vector | |
static Vec3< T > | null () |
return null vector (only valid for floating point types) | |
static T | dot (const Vec3< T > &v1, const Vec3< T > &v2) |
Vector dot product (equivalent to *) | |
static Vec3< T > | cross (const Vec3< T > &v1, const Vec3< T > &v2) |
Vector cross product. | |
Friends | |
int | operator== (const Vec3< T > &v1, const Vec3< T > &v2) |
Vector equality (for floating point types see equals()) | |
int | operator!= (const Vec3< T > &v1, const Vec3< T > &v2) |
Vector inequality (for floating point types see equals()) | |
Vec3< T > | operator- (const Vec3< T > &v) |
Vector negation operator. | |
Vec3< T > | operator+ (const Vec3< T > &v1, const Vec3< T > &v2) |
Vector addition operator. | |
Vec3< T > | operator- (const Vec3< T > &v1, const Vec3< T > &v2) |
Vector subtraction operator. | |
Vec3< T > | operator* (const T &s, const Vec3< T > &v1) |
Vector scaling operator. | |
Vec3< T > | operator* (const Vec3< T > &v1, const T &s) |
Vector scaling operator. | |
T | operator* (const Vec3< T > &v1, const Vec3< T > &v2) |
Vector dot product. |
3-vector class