92 operator const FXVec2d&()
const {
return *
reinterpret_cast<const FXVec2d*
>(
this);}
122 bool operator!()
const {
return x==0.0 && y==0.0 && z==0.0; }
200 extern FXAPI FXVec3d
normal(
const FXVec3d& a,
const FXVec3d& b,
const FXVec3d& c);
201 extern FXAPI FXVec3d
normal(
const FXVec3d& a,
const FXVec3d& b,
const FXVec3d& c,
const FXVec3d& d);
FXVec2d lo(const FXVec2d &a, const FXVec2d &b)
Definition: FXVec2d.h:174
FXMat3d operator/(const FXMat3d &a, FXdouble x)
FXdouble & operator[](FXint i)
Return a non-const reference to the ith element.
Definition: FXVec3d.h:59
FXStream & operator>>(FXStream &store, FXDate &d)
FXVec3d operator-() const
Definition: FXVec3d.h:99
FXdouble operator*(const FXVec3d &v) const
Dot product.
Definition: FXVec3d.h:116
FXVec3d(const FXdouble v[])
Initialize from array of doubles.
Definition: FXVec3d.h:50
FXVec3d & operator=(const FXVec3d &v)
Assignment.
Definition: FXVec3d.h:68
#define FXCLAMP(lo, x, hi)
Clamp value x to range [lo..hi].
Definition: fxdefs.h:509
FXVec3d & operator*=(FXdouble n)
Assigning operators.
Definition: FXVec3d.h:83
FXVec3d & clamp(FXdouble lo, FXdouble hi)
Clamp values of vector between limits.
Definition: FXVec3d.h:154
Double-precision 3-element vector.
Definition: FXVec3d.h:36
Double-precision 4x4 matrix.
Definition: FXMat4d.h:32
bool operator==(const FXVec3d &v) const
Equality tests.
Definition: FXVec3d.h:125
FXVec3d & set(const FXVec3d &v)
Set value from another vector.
Definition: FXVec3d.h:74
#define FXAPI
Definition: fxdefs.h:122
FXVec3d operator-(const FXVec3d &v) const
Definition: FXVec3d.h:103
FXVec3d & set(const FXdouble v[])
Set value from array of floats.
Definition: FXVec3d.h:77
FXdouble length() const
Definition: FXVec3d.h:151
bool operator<=(const FXString &s1, const FXString &s2)
FXVec3d operator+() const
Unary.
Definition: FXVec3d.h:98
FXVec3d normal(const FXVec3d &a, const FXVec3d &b, const FXVec3d &c)
FXuint FXColor
Definition: fxdefs.h:454
bool operator>=(const FXString &s1, const FXString &s2)
FXVec3d()
Default constructor.
Definition: FXVec3d.h:44
FXVec3d & operator=(const FXdouble v[])
Assignment from array of doubles.
Definition: FXVec3d.h:71
A stream is a way to serialize data and objects into a byte stream.
Definition: FXStream.h:99
FXString normalize(const FXString &s)
FXVec3d(const FXVec3d &v)
Initialize from another vector.
Definition: FXVec3d.h:47
FXdouble y
Definition: FXVec3d.h:39
double FXdouble
Definition: fxdefs.h:399
FXVec3d operator+(const FXVec3d &v) const
Vector and vector.
Definition: FXVec3d.h:102
FXdouble x
Definition: FXVec3d.h:38
#define FXMAX(a, b)
Return the maximum of a or b.
Definition: fxdefs.h:488
bool operator>(const FXVec3d &v) const
Definition: FXVec3d.h:136
int FXint
Definition: fxdefs.h:397
bool operator<(const FXVec3d &v) const
Inequality tests.
Definition: FXVec3d.h:134
FXdouble z
Definition: FXVec3d.h:40
FXVec2d hi(const FXVec2d &a, const FXVec2d &b)
Definition: FXVec2d.h:175
bool operator>=(const FXVec3d &v) const
Definition: FXVec3d.h:137
#define FXMIN(a, b)
Return the minimum of a or b.
Definition: fxdefs.h:491
const FXdouble & operator[](FXint i) const
Return a const reference to the ith element.
Definition: FXVec3d.h:62
bool operator<=(const FXVec3d &v) const
Definition: FXVec3d.h:135
Double-precision 2-element vector.
Definition: FXVec2d.h:35
FXdouble length2() const
Length and square of length.
Definition: FXVec3d.h:150
bool operator<(const FXString &s1, const FXString &s2)
FXVec3d & operator-=(const FXVec3d &v)
Definition: FXVec3d.h:86
bool operator>(const FXString &s1, const FXString &s2)
bool operator!() const
Test if zero.
Definition: FXVec3d.h:122
FXVec3d & operator+=(const FXVec3d &v)
Definition: FXVec3d.h:85
FXVec3d(FXdouble xx, FXdouble yy, FXdouble zz=1.0)
Initialize with components.
Definition: FXVec3d.h:53
Double-precision 3x3 matrix.
Definition: FXMat3d.h:35
FXStream & operator<<(FXStream &store, const FXDate &d)
FXVec3d & set(FXdouble xx, FXdouble yy, FXdouble zz)
Set value from components.
Definition: FXVec3d.h:80
bool operator!=(const FXString &s1, const FXString &s2)
FXVec3d operator^(const FXVec3d &v) const
Cross product.
Definition: FXVec3d.h:119
bool operator==(const FXString &s1, const FXString &s2)
FXMat3d operator*(FXdouble x, const FXMat3d &a)
FXVec3d & operator/=(FXdouble n)
Definition: FXVec3d.h:84
bool operator!=(const FXVec3d &v) const
Definition: FXVec3d.h:126