|
| Vector3 () |
|
| Vector3 (const Any &any) |
|
Any | toAny (const std::string &name) const |
|
Any | toAny () const |
|
| Vector3 (const Vector4int8 &) |
|
| Vector3 (const class Vector2 &v, float z) |
|
| Vector3 (const class Vector3int32 &v) |
|
| Vector3 (class BinaryInput &b) |
|
| Vector3 (float _x, float _y, float _z) |
|
| Vector3 (float coordinate[3]) |
|
| Vector3 (double coordinate[3]) |
|
| Vector3 (const class Vector3int16 &v) |
|
| Vector3 (class TextInput &t) |
|
| Vector3 (const class Color3 &c) |
|
void | serialize (class BinaryOutput &b) const |
|
void | deserialize (class BinaryInput &b) |
|
void | serialize (class TextOutput &t) const |
|
void | deserialize (class TextInput &t) |
|
const float &__fastcall | operator[] (int i) const |
|
float & | operator[] (int i) |
|
bool | nonZero () const |
|
Axis | primaryAxis () const |
|
Vector3 &__fastcall | operator= (const Vector3 &rkVector) |
|
Vector3 & | operator= (const Any &a) |
|
bool | operator== (const Vector3 &rkVector) const |
|
bool | operator!= (const Vector3 &rkVector) const |
|
size_t | hashCode () const |
|
bool | fuzzyEq (const Vector3 &other) const |
|
bool | fuzzyNe (const Vector3 &other) const |
|
bool | isFinite () const |
|
bool | isNaN () const |
|
bool | isZero () const |
|
bool | isUnit () const |
|
Vector3 | movedTowards (const Vector3 &goal, float maxTranslation) const |
|
void | moveTowards (const Vector3 &goal, float maxTranslation) |
|
Vector3 __fastcall | operator+ (const Vector3 &v) const |
|
Vector3 __fastcall | operator- (const Vector3 &v) const |
|
Vector3 __fastcall | operator* (float s) const |
|
Vector3 __fastcall | operator/ (float s) const |
|
Vector3 __fastcall | operator* (const Vector3 &v) const |
|
Vector3 __fastcall | operator/ (const Vector3 &v) const |
|
Vector3 __fastcall | operator- () const |
|
Vector3 &__fastcall | operator+= (const Vector3 &v) |
|
Vector3 &__fastcall | operator-= (const Vector3 &v) |
|
Vector3 &__fastcall | operator*= (float s) |
|
Vector3 &__fastcall | operator/= (float s) |
|
Vector3 &__fastcall | operator*= (const Vector3 &v) |
|
Vector3 &__fastcall | operator/= (const Vector3 &v) |
|
float | length () const |
|
float | magnitude () const |
|
Vector3 | pow (float p) const |
|
Vector3 | direction () const |
|
Vector3 | fastDirection () const |
|
Vector3 | reflectAbout (const Vector3 &normal) const |
|
Vector3 | reflectionDirection (const Vector3 &normal) const |
|
Vector3 | directionOrZero () const |
|
Vector3 | refractionDirection (const Vector3 &normal, float iInside, float iOutside) const |
|
Vector3 | unit () const |
|
Vector3 | fastUnit () const |
|
float | squaredLength () const |
|
float | squaredMagnitude () const |
|
float __fastcall | dot (const Vector3 &rkVector) const |
|
Vector3 __fastcall | cross (const Vector3 &rkVector) const |
|
Vector3 | unitCross (const Vector3 &rkVector) const |
|
class Matrix3 | cross () const |
|
Vector3 __fastcall | min (const Vector3 &v) const |
|
Vector3 __fastcall | max (const Vector3 &v) const |
|
float | min () const |
|
float | max () const |
|
std::string | toString () const |
|
Vector3 | clamp (const Vector3 &low, const Vector3 &high) const |
|
Vector3 | clamp (float low, float high) const |
|
Vector3 | floor () const |
|
Vector3 | round () const |
|
Vector3 | lerp (const Vector3 &v, float alpha) const |
|
float | sum () const |
|
float | average () const |
|
void | getTangents (Vector3 &X, Vector3 &Y) const |
|
Vector2 | xx () const |
|
Vector2 | yx () const |
|
Vector2 | zx () const |
|
Vector2 | xy () const |
|
Vector2 | yy () const |
|
Vector2 | zy () const |
|
Vector2 | xz () const |
|
Vector2 | yz () const |
|
Vector2 | zz () const |
|
Vector3 | xxx () const |
|
Vector3 | yxx () const |
|
Vector3 | zxx () const |
|
Vector3 | xyx () const |
|
Vector3 | yyx () const |
|
Vector3 | zyx () const |
|
Vector3 | xzx () const |
|
Vector3 | yzx () const |
|
Vector3 | zzx () const |
|
Vector3 | xxy () const |
|
Vector3 | yxy () const |
|
Vector3 | zxy () const |
|
Vector3 | xyy () const |
|
Vector3 | yyy () const |
|
Vector3 | zyy () const |
|
Vector3 | xzy () const |
|
Vector3 | yzy () const |
|
Vector3 | zzy () const |
|
Vector3 | xxz () const |
|
Vector3 | yxz () const |
|
Vector3 | zxz () const |
|
Vector3 | xyz () const |
|
Vector3 | yyz () const |
|
Vector3 | zyz () const |
|
Vector3 | xzz () const |
|
Vector3 | yzz () const |
|
Vector3 | zzz () const |
|
Vector4 | xxxx () const |
|
Vector4 | yxxx () const |
|
Vector4 | zxxx () const |
|
Vector4 | xyxx () const |
|
Vector4 | yyxx () const |
|
Vector4 | zyxx () const |
|
Vector4 | xzxx () const |
|
Vector4 | yzxx () const |
|
Vector4 | zzxx () const |
|
Vector4 | xxyx () const |
|
Vector4 | yxyx () const |
|
Vector4 | zxyx () const |
|
Vector4 | xyyx () const |
|
Vector4 | yyyx () const |
|
Vector4 | zyyx () const |
|
Vector4 | xzyx () const |
|
Vector4 | yzyx () const |
|
Vector4 | zzyx () const |
|
Vector4 | xxzx () const |
|
Vector4 | yxzx () const |
|
Vector4 | zxzx () const |
|
Vector4 | xyzx () const |
|
Vector4 | yyzx () const |
|
Vector4 | zyzx () const |
|
Vector4 | xzzx () const |
|
Vector4 | yzzx () const |
|
Vector4 | zzzx () const |
|
Vector4 | xxxy () const |
|
Vector4 | yxxy () const |
|
Vector4 | zxxy () const |
|
Vector4 | xyxy () const |
|
Vector4 | yyxy () const |
|
Vector4 | zyxy () const |
|
Vector4 | xzxy () const |
|
Vector4 | yzxy () const |
|
Vector4 | zzxy () const |
|
Vector4 | xxyy () const |
|
Vector4 | yxyy () const |
|
Vector4 | zxyy () const |
|
Vector4 | xyyy () const |
|
Vector4 | yyyy () const |
|
Vector4 | zyyy () const |
|
Vector4 | xzyy () const |
|
Vector4 | yzyy () const |
|
Vector4 | zzyy () const |
|
Vector4 | xxzy () const |
|
Vector4 | yxzy () const |
|
Vector4 | zxzy () const |
|
Vector4 | xyzy () const |
|
Vector4 | yyzy () const |
|
Vector4 | zyzy () const |
|
Vector4 | xzzy () const |
|
Vector4 | yzzy () const |
|
Vector4 | zzzy () const |
|
Vector4 | xxxz () const |
|
Vector4 | yxxz () const |
|
Vector4 | zxxz () const |
|
Vector4 | xyxz () const |
|
Vector4 | yyxz () const |
|
Vector4 | zyxz () const |
|
Vector4 | xzxz () const |
|
Vector4 | yzxz () const |
|
Vector4 | zzxz () const |
|
Vector4 | xxyz () const |
|
Vector4 | yxyz () const |
|
Vector4 | zxyz () const |
|
Vector4 | xyyz () const |
|
Vector4 | yyyz () const |
|
Vector4 | zyyz () const |
|
Vector4 | xzyz () const |
|
Vector4 | yzyz () const |
|
Vector4 | zzyz () const |
|
Vector4 | xxzz () const |
|
Vector4 | yxzz () const |
|
Vector4 | zxzz () const |
|
Vector4 | xyzz () const |
|
Vector4 | yyzz () const |
|
Vector4 | zyzz () const |
|
Vector4 | xzzz () const |
|
Vector4 | yzzz () const |
|
Vector4 | zzzz () const |
|
Swizzles Vector classes have swizzle operators, e.g. v.xy()
, that allow selection of arbitrary sub-fields. These cannot be used as write masks. Examples
Vector3 v(1, 2, 3);
Vector3 j;
Vector2 b;
b = v.xz();
j = b.xx();
Warning
Do not subclass– this implementation makes assumptions about the memory layout.
Random unit vector, distributed according to .
That is, so that the probability of is proportional to . Useful in photon mapping for Lambertian scattering.
Distribution rendered by G3D::DirectionHistogram:
- Parameters
-
n | Unit vector at the center of the distribution. |
[Henrik] Wann Jensen, Realistic Image Synthesis using Photon Mapping eqn 2.24
245 "cosHemiRandom requires its argument to have unit length");
254 normal.getTangents(X, Y);
#define Z
Definition: CollisionDetection.cpp:2283
float x
Definition: Vector3.h:62
#define X
Definition: CollisionDetection.cpp:2281
#define debugAssertM(exp, message)
Definition: debugAssert.h:161
float y
Definition: Vector3.h:62
Vector3()
Definition: Vector3.h:604
float z
Definition: Vector3.h:62
bool fuzzyEq(double a, double b)
Definition: g3dmath.h:857
#define Y
Definition: CollisionDetection.cpp:2282
Random unit vector, distributed according to .
That is, so that the probability of is proportional to . Useful in photon mapping for glossy scattering.
Distribution rendered by G3D::DirectionHistogram:
- Parameters
-
n | Unit vector at the center of the distribution. |
[Ashikhmin] and Shirley, An anisotropic Phong BRDF model, Journal of Graphics Tools, 2002
285 "cosPowHemiRandom requires its argument to have unit length");
288 r.cosPowHemi(k, x, y, z);
294 normal.getTangents(X, Y);
#define Z
Definition: CollisionDetection.cpp:2283
float x
Definition: Vector3.h:62
#define X
Definition: CollisionDetection.cpp:2281
#define debugAssertM(exp, message)
Definition: debugAssert.h:161
float y
Definition: Vector3.h:62
Vector3()
Definition: Vector3.h:604
float z
Definition: Vector3.h:62
bool fuzzyEq(double a, double b)
Definition: g3dmath.h:857
#define Y
Definition: CollisionDetection.cpp:2282