diff options
Diffstat (limited to 'archive/hgehelp/hgevector.cpp')
-rw-r--r-- | archive/hgehelp/hgevector.cpp | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/archive/hgehelp/hgevector.cpp b/archive/hgehelp/hgevector.cpp deleted file mode 100644 index 921f7b7..0000000 --- a/archive/hgehelp/hgevector.cpp +++ /dev/null @@ -1,69 +0,0 @@ -/* -** Haaf's Game Engine 1.7 -** Copyright (C) 2003-2007, Relish Games -** hge.relishgames.com -** -** hgeVector helper class implementation -*/ - - -#include "hgevector.h" - -float InvSqrt(float x) -{ - union - { - int intPart; - float floatPart; - } convertor; - - convertor.floatPart = x; - convertor.intPart = 0x5f3759df - (convertor.intPart >> 1); - return convertor.floatPart*(1.5f - 0.4999f*x*convertor.floatPart*convertor.floatPart); -} - -/* -hgeVector *hgeVector::Normalize() -{ - float lenRcp; - - lenRcp=sqrtf(Dot(this)); - - if(lenRcp) - { - lenRcp=1.0f/lenRcp; - - x*=lenRcp; - y*=lenRcp; - } - - return this; -} -*/ - -float hgeVector::Angle(const hgeVector *v) const -{ - if(v) - { - hgeVector s=*this, t=*v; - - s.Normalize(); t.Normalize(); - return acosf(s.Dot(&t)); - } - else return atan2f(y, x); -} - -hgeVector *hgeVector::Rotate(float a) -{ - hgeVector v; - - v.x=x*cosf(a) - y*sinf(a); - v.y=x*sinf(a) + y*cosf(a); - - x=v.x; y=v.y; - - return this; -} - - - |