#include <Vector4D.hh>
Public Methods | |
Vector4D () | |
Vector4D (const double x, const double y, const double z, const double t) | |
Vector4D (const Vector4D &v) | |
Vector4D & | operator= (const Vector4D &v) |
BOOL | operator== (const Vector4D &v) const |
BOOL | operator!= (const Vector4D &v) const |
void | operator+= (const Vector4D &v) |
void | operator-= (const Vector4D &v) |
void | operator *= (const Vector4D &v) |
void | operator/= (const Vector4D &v) |
void | operator+= (const double Factor) |
void | operator-= (const double Factor) |
void | operator *= (const double Factor) |
void | operator/= (const double Factor) |
void | Abs () |
void | AddScaled (const Vector4D &v, const double &Scale) |
void | Adjust (const double x, const double y, const double z, const double t) |
BOOL | bAtOrg () const |
BOOL | bWithinLimits (const double Limit) const |
double | Dot (const Vector4D &v) const |
double | X () const |
double | Y () const |
double | Z () const |
double | T () const |
double | X (const double x) |
double | Y (const double y) |
double | Z (const double z) |
double | T (const double t) |
double | Magnitude () const |
double | MagSum () const |
void | ClipToDegrees () |
void | HalfBetween (const Vector4D &v) |
void | Negate () |
void | Normalize () |
void | Set (const double x, const double y, const double z, const double t) |
void | Square () |
void | ToRadians () |
void | Cross (const Vector4D &v) |
void | Mix (const Vector4D &v) |
Private Attributes | |
double | X |
double | Y |
double | Z |
double | T |
Friends | |
class | Matrix4by4 |
Vector4D | operator+ (const Vector4D &left, const Vector4D &right) |
Vector4D | operator- (const Vector4D &left, const Vector4D &right) |
Vector4D | operator * (const Vector4D &left, const Vector4D &right) |
Vector4D | operator/ (const Vector4D &left, const Vector4D &right) |
Vector4D | operator+ (const Vector4D &left, const double Factor) |
Vector4D | operator- (const Vector4D &left, const double Factor) |
Vector4D | operator * (const Vector4D &left, const double Factor) |
Vector4D | operator/ (const Vector4D &left, const double Factor) |
Vector4D | vecHalfBetween (const Vector4D &left, const Vector4D &right) |
Vector4D | vecCross (const Vector4D &left, const Vector4D &right) |
Vector4D | vecMix (const Vector4D &left, const Vector4D &right) |
|
Definition at line 4 of file Vector4D.cc. |
|
Definition at line 7 of file Vector4D.cc. |
|
Definition at line 11 of file Vector4D.cc. |
|
Definition at line 120 of file Vector4D.cc. |
|
|
|
Definition at line 211 of file Vector4D.cc. 00212 { 00213 X += x; 00214 Y += y; 00215 Z += z; 00216 T += t; 00217 } |
|
Definition at line 144 of file Vector4D.cc. 00144 { 00145 if (X > 360.0) 00146 X = mod(X, 360.0); 00147 00148 if (Y > 360.0) 00149 Y = mod(Y, 360.0); 00150 00151 if (Z > 360.0) 00152 Z = mod(Z, 360.0); 00153 00154 if (T > 360.0) 00155 T = mod(T, 360.0); 00156 } |
|
Definition at line 290 of file Vector4D.cc. |
|
Definition at line 136 of file Vector4D.cc. |
|
Definition at line 189 of file Vector4D.cc. |
|
Definition at line 255 of file Vector4D.cc. 00255 { 00256 return (X + Y + Z + T); 00257 } |
|
Definition at line 140 of file Vector4D.cc. Referenced by Normalize().
00140 { 00141 return sqrt( (X * X) + (Y * Y) + (Z * Z) + (T * T) ); 00142 } |
|
Definition at line 309 of file Vector4D.cc. |
|
Definition at line 259 of file Vector4D.cc. 00259 { 00260 X *= -1; 00261 Y *= -1; 00262 Z *= -1; 00263 T *= -1; 00264 } |
|
Definition at line 158 of file Vector4D.cc. 00158 { 00159 double Mag = Magnitude(); 00160 00161 if ( Mag != 0 ) { 00162 X /= Mag; 00163 Y /= Mag; 00164 Z /= Mag; 00165 T /= Mag; 00166 } 00167 } |
|
Definition at line 266 of file Vector4D.cc. 00267 { 00268 X = x; 00269 Y = y; 00270 Z = z; 00271 T = t; 00272 } |
|
Definition at line 274 of file Vector4D.cc. 00274 { 00275 X *= X; 00276 Y *= Y; 00277 Z *= Z; 00278 T *= T; 00279 } |
|
|
|
Referenced by Dot(), HalfBetween(), operator *(), operator *=(), operator+(), operator+=(), operator-(), operator-=(), operator/(), operator/=(), operator=(), vecCross(), and vecHalfBetween().
|
|
Definition at line 169 of file Vector4D.cc. 00170 { 00171 if (abs(X) > 360.0) 00172 X = mod(X, 360.0); 00173 00174 if (abs(Y) > 360.0) 00175 Y = mod(Y, 360.0); 00176 00177 if (abs(Z) > 360.0) 00178 Z = mod(Z, 360.0); 00179 00180 if (abs(T) > 360.0) 00181 T = mod(T, 360.0); 00182 00183 X *= MATH_PI / 180.0; 00184 Y *= MATH_PI / 180.0; 00185 Z *= MATH_PI / 180.0; 00186 T *= MATH_PI / 180.0; 00187 } |
|
|
|
Referenced by Cross(), Dot(), HalfBetween(), operator *(), operator *=(), operator+(), operator+=(), operator-(), operator-=(), operator/(), operator/=(), operator=(), vecCross(), vecHalfBetween(), and vecMix().
|
|
|
|
Referenced by Cross(), Dot(), HalfBetween(), Mix(), operator *(), operator *=(), operator+(), operator+=(), operator-(), operator-=(), operator/(), operator/=(), operator=(), vecCross(), vecHalfBetween(), and vecMix().
|
|
|
|
Referenced by Cross(), Dot(), HalfBetween(), Mix(), operator *(), operator *=(), operator+(), operator+=(), operator-(), operator-=(), operator/(), operator/=(), operator=(), vecCross(), vecHalfBetween(), and vecMix().
|
|
Definition at line 127 of file Vector4D.cc. 00127 { 00128 return ( (X == 0.0) && (Y == 0.0) && (Z == 0.0) && (T == 0.0) ); 00129 } |
|
Definition at line 131 of file Vector4D.cc. |
|
Definition at line 105 of file Vector4D.cc. |
|
Definition at line 77 of file Vector4D.cc. |
|
Definition at line 27 of file Vector4D.cc. 00027 { 00028 return !Compare( v ); 00029 } |
|
Definition at line 91 of file Vector4D.cc. |
|
Definition at line 63 of file Vector4D.cc. |
|
Definition at line 98 of file Vector4D.cc. |
|
Definition at line 70 of file Vector4D.cc. |
|
Definition at line 112 of file Vector4D.cc. |
|
Definition at line 84 of file Vector4D.cc. |
|
Definition at line 196 of file Vector4D.cc. |
|
Definition at line 23 of file Vector4D.cc. 00023 { 00024 return Compare( v ); 00025 } |
|
Definition at line 78 of file Vector4D.hh. |
|
Definition at line 55 of file Vector4D.cc. |
|
Definition at line 39 of file Vector4D.cc. |
|
Definition at line 47 of file Vector4D.cc. |
|
Definition at line 31 of file Vector4D.cc. |
|
Definition at line 51 of file Vector4D.cc. |
|
Definition at line 35 of file Vector4D.cc. |
|
Definition at line 59 of file Vector4D.cc. |
|
Definition at line 43 of file Vector4D.cc. |
|
Definition at line 299 of file Vector4D.cc. |
|
Definition at line 281 of file Vector4D.cc. |
|
Definition at line 305 of file Vector4D.cc. |
|
Definition at line 250 of file Vector4D.cc. 00250 { 00251 T = t; 00252 return T; 00253 } |
|
Definition at line 223 of file Vector4D.cc. 00223 { 00224 X = x; 00225 return X; 00226 } |
|
Definition at line 232 of file Vector4D.cc. 00232 { 00233 Y = y; 00234 return Y; 00235 } |
|
Definition at line 241 of file Vector4D.cc. 00241 { 00242 Z = z; 00243 return Z; 00244 } |