Assignment Operators (D3D_OVERLOADS)

The assignment operators are overloaded operators for the D3D_OVERLOADS extensions. Both scalar and vector forms of the "*=" and "/=" operators have been implemented. (In the vector form, multiplication and division are memberwise.)

_D3DVECTOR& operator += (const _D3DVECTOR& v);

_D3DVECTOR& operator -= (const _D3DVECTOR& v);

_D3DVECTOR& operator *= (const _D3DVECTOR& v);

_D3DVECTOR& operator /= (const _D3DVECTOR& v);

_D3DVECTOR& operator *= (D3DVALUE s);

_D3DVECTOR& operator /= (D3DVALUE s);

The assignment operators are defined as follows:

inline _D3DVECTOR&

_D3DVECTOR::operator += (const _D3DVECTOR& v)

{

x += v.x; y += v.y; z += v.z;

return *this;

}

inline _D3DVECTOR&

_D3DVECTOR::operator -= (const _D3DVECTOR& v)

{

x -= v.x; y -= v.y; z -= v.z;

return *this;

}

inline _D3DVECTOR&

_D3DVECTOR::operator *= (const _D3DVECTOR& v)

{

x *= v.x; y *= v.y; z *= v.z;

return *this;

}

inline _D3DVECTOR&

_D3DVECTOR::operator /= (const _D3DVECTOR& v)

{

x /= v.x; y /= v.y; z /= v.z;

return *this;

}

inline _D3DVECTOR&

_D3DVECTOR::operator *= (D3DVALUE s)

{

x *= s; y *= s; z *= s;

return *this;

}

inline _D3DVECTOR&

_D3DVECTOR::operator /= (D3DVALUE s)

{

x /= s; y /= s; z /= s;

return *this;

}