#pragma once #include #include "dxstdafx.h" #include "NxPhysics.h" class Vector : public D3DXVECTOR4 { public: Vector(void); Vector(float _x, float _y, float _z); Vector(NxVec3 vec); void normalize(); float length(); Vector crossProd(Vector &v2); float dotProd(Vector &v2); NxVec3 getNxVector(); D3DXVECTOR3 getD3DXVector3(); void setNxVector(NxVec3 &nxv); NxQuat getNxQuatRotation(); void applyD3DXVector(D3DXVECTOR4 *v); // assignment operators Vector operator += ( CONST Vector& v); Vector operator -= ( CONST Vector& v); Vector operator *= ( float a); Vector operator /= ( float a); // binary operators Vector operator + ( CONST Vector& v) const; Vector operator - ( CONST Vector& v) const; Vector operator * ( float a) const; Vector operator / ( float a) const; void setXYZ(float _x, float _y, float _z); void addXYZ(float _x, float _y, float _z); protected: NxVec3 nxVector; };