94 operator const FXfloat*()
const {
return &x;}
96 operator const FXVec3f&()
const {
return *
reinterpret_cast<const FXVec3f*
>(
this);}
122 bool operator!()
const {
return x==0.0f && y==0.0f && z==0.0f && w==0.0f; }
206 extern FXAPI FXVec4f
plane(
const FXVec4f& vec);
208 extern FXAPI FXVec4f
plane(
const FXVec3f& vec,
const FXVec3f& p);
209 extern FXAPI FXVec4f
plane(
const FXVec3f& a,
const FXVec3f& b,
const FXVec3f& c);
FXVec2d lo(const FXVec2d &a, const FXVec2d &b)
Definition: FXVec2d.h:174
FXMat3d operator/(const FXMat3d &a, FXdouble x)
FXVec4f & operator/=(FXfloat n)
Definition: FXVec4f.h:88
FXStream & operator>>(FXStream &store, FXDate &d)
FXVec4f(FXfloat xx, FXfloat yy, FXfloat zz, FXfloat ww=1.0f)
Construct from components.
Definition: FXVec4f.h:56
FXfloat z
Definition: FXVec3f.h:40
FXfloat length2() const
Length and square of length.
Definition: FXVec4f.h:150
#define FXCLAMP(lo, x, hi)
Clamp value x to range [lo..hi].
Definition: fxdefs.h:509
FXVec4f operator+() const
Unary.
Definition: FXVec4f.h:102
FXVec4f()
Default constructor.
Definition: FXVec4f.h:44
FXVec4f & set(const FXVec4f &v)
Set value from another vector.
Definition: FXVec4f.h:78
FXVec4f & operator-=(const FXVec4f &v)
Definition: FXVec4f.h:90
bool operator!() const
Test if zero.
Definition: FXVec4f.h:122
#define FXAPI
Definition: fxdefs.h:122
FXfloat length() const
Definition: FXVec4f.h:151
FXfloat w
Definition: FXVec4f.h:40
FXVec4f & set(FXfloat xx, FXfloat yy, FXfloat zz, FXfloat ww)
Set value from components.
Definition: FXVec4f.h:84
FXVec4f operator+(const FXVec4f &v) const
Vector and vector.
Definition: FXVec4f.h:106
bool operator<=(const FXString &s1, const FXString &s2)
FXuint FXColor
Definition: fxdefs.h:454
bool operator>=(const FXString &s1, const FXString &s2)
bool operator==(const FXVec4f &v) const
Equality tests.
Definition: FXVec4f.h:125
A stream is a way to serialize data and objects into a byte stream.
Definition: FXStream.h:99
FXString normalize(const FXString &s)
FXVec4f operator-() const
Definition: FXVec4f.h:103
FXVec4f & operator*=(FXfloat n)
Assigning operators.
Definition: FXVec4f.h:87
FXVec4f & clamp(FXfloat lo, FXfloat hi)
Clamp values of vector between limits.
Definition: FXVec4f.h:154
bool operator<=(const FXVec4f &v) const
Definition: FXVec4f.h:135
#define FXMAX(a, b)
Return the maximum of a or b.
Definition: fxdefs.h:488
FXfloat x
Definition: FXVec3f.h:38
int FXint
Definition: fxdefs.h:397
bool operator!=(const FXVec4f &v) const
Definition: FXVec4f.h:126
bool operator<(const FXVec4f &v) const
Inequality tests.
Definition: FXVec4f.h:134
FXfloat y
Definition: FXVec3f.h:39
FXVec4f & operator=(const FXVec4f &v)
Definition: FXVec4f.h:72
FXVec2d hi(const FXVec2d &a, const FXVec2d &b)
Definition: FXVec2d.h:175
FXVec4f(const FXfloat v[])
Construct from array of floats.
Definition: FXVec4f.h:53
Single-precision 3-element vector.
Definition: FXVec3f.h:36
#define FXMIN(a, b)
Return the minimum of a or b.
Definition: fxdefs.h:491
Single-precision 4x4 matrix.
Definition: FXMat4f.h:32
bool operator>=(const FXVec4f &v) const
Definition: FXVec4f.h:137
FXfloat y
Definition: FXVec4f.h:38
FXVec4f & operator=(const FXVec3f &v)
Assignment.
Definition: FXVec4f.h:71
FXVec4f & set(const FXfloat v[])
Set value from array of floats.
Definition: FXVec4f.h:81
FXVec4f(const FXVec4f &v)
Initialize from another vector.
Definition: FXVec4f.h:47
bool operator<(const FXString &s1, const FXString &s2)
FXVec4f(const FXVec3f &v, FXfloat ww=1.0f)
Construct with 3-vector and optional scalar.
Definition: FXVec4f.h:50
FXVec4f & operator+=(const FXVec4f &v)
Definition: FXVec4f.h:89
FXfloat z
Definition: FXVec4f.h:39
bool operator>(const FXString &s1, const FXString &s2)
const FXfloat & operator[](FXint i) const
Return a const reference to the ith element.
Definition: FXVec4f.h:65
float FXfloat
Definition: fxdefs.h:398
FXVec4f & operator=(const FXfloat v[])
Assignment from array of floats.
Definition: FXVec4f.h:75
FXfloat x
Definition: FXVec4f.h:37
bool operator>(const FXVec4f &v) const
Definition: FXVec4f.h:136
#define sqrtf(x)
Definition: fxdefs.h:696
FXVec4d plane(const FXVec4d &vec)
FXStream & operator<<(FXStream &store, const FXDate &d)
bool operator!=(const FXString &s1, const FXString &s2)
FXfloat & operator[](FXint i)
Return a non-const reference to the ith element.
Definition: FXVec4f.h:62
bool operator==(const FXString &s1, const FXString &s2)
FXMat3d operator*(FXdouble x, const FXMat3d &a)
FXfloat operator*(const FXVec4f &v) const
Dot product.
Definition: FXVec4f.h:119
Single-precision 4-element vector.
Definition: FXVec4f.h:35
FXVec4f operator-(const FXVec4f &v) const
Definition: FXVec4f.h:107