- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- File List

# src/TaskBasedFlockSim/Vector3.h

    00001
    00002
    00003
    00004
    00005
    00006
    00007
    00008
    00009
    00010
    00011
    00012
    00013
    00014
    00015
    00016
    00017
    00018
    00019
    00020
    00021 #ifndef _VECTOR3_H_
    00022 #define _VECTOR3_H_
    00023
    00024 namespace TestFrameWork
    00025 {
    00026
    00027 class Vector3
    00028 {
    00029 public:
    00030         Vector3(void);
    00031
    00032         Vector3(float x, float y, float z);
    00033
    00034         Vector3(const Vector3& vector);
    00035
    00036         ~Vector3(void);
    00037
    00038         Vector3 Cross(const Vector3& v) const;
    00039
    00040         float Dot(const Vector3& v) const;
    00041
    00042         Vector3& Normalize(void);
    00043
    00044         float Length(void) const;
    00045
    00046         Vector3& operator=(const Vector3& vector);
    00047
    00048         Vector3& operator+=(const Vector3& vector);
    00049
    00050         Vector3& operator*=(const Vector3& vector);
    00051
    00052         Vector3& operator/=(float constant);
    00053
    00054         Vector3& operator*=(float constant);
    00055
    00056         Vector3 operator-(void);
    00057
    00058         float m_x;
    00059         float m_y;
    00060         float m_z;
    00061 };
    00062
    00063 Vector3 operator+(const Vector3& leftV, const Vector3& rightV);
    00064
    00065 Vector3 operator-(const Vector3& leftV, const Vector3& rightV);
    00066
    00067 Vector3 operator*(const Vector3& leftV, const Vector3& rightV);
    00068
    00069 Vector3 operator*(const Vector3& leftV, float k);
    00070
    00071 Vector3 operator*(float k, const Vector3& rightV);
    00072
    00073 Vector3 Interpolate(const Vector3& leftV, const Vector3& rightV, float k);
    00074
    00075 Vector3 Max(const Vector3& leftV, const Vector3& rightV);
    00076
    00077 Vector3 Truncate(const Vector3& leftV, const Vector3& rightV);
    00078
    00079 Vector3 Normalize(const Vector3& vector);
    00080
    00081 bool IsFinite(const Vector3& vector);
    00082
    00083 }
    00084
    00085 #endif