class quat_t {
public:
-float x;
-float y;
-float z;
-float w;
+ float x;
+ float y;
+ float z;
+ float w;
-quat_t();
-quat_t( float x, float y, float z, float w );
+ quat_t();
+ quat_t( float x, float y, float z, float w );
+ quat_t( const quat_t & ) = default;
-friend void toQuat( idVec3_t &src, quat_t &dst );
-friend void toQuat( angles_t &src, quat_t &dst );
-friend void toQuat( mat3_t &src, quat_t &dst );
+ friend void toQuat( idVec3_t &src, quat_t &dst );
+ friend void toQuat( angles_t &src, quat_t &dst );
+ friend void toQuat( mat3_t &src, quat_t &dst );
-float *vec4( void );
+ float *vec4( void );
-float operator[]( int index ) const;
-float &operator[]( int index );
+ float operator[]( int index ) const;
+ float &operator[]( int index );
-void set( float x, float y, float z, float w );
+ void set( float x, float y, float z, float w );
-void operator=( quat_t a );
+ quat_t &operator=( const quat_t &a ) = default;
-friend quat_t operator+( quat_t a, quat_t b );
-quat_t &operator+=( quat_t a );
+ friend quat_t operator+( quat_t a, quat_t b );
+ quat_t &operator+=( quat_t a );
-friend quat_t operator-( quat_t a, quat_t b );
-quat_t &operator-=( quat_t a );
+ friend quat_t operator-( quat_t a, quat_t b );
+ quat_t &operator-=( quat_t a );
-friend quat_t operator*( quat_t a, float b );
-friend quat_t operator*( float a, quat_t b );
-quat_t &operator*=( float a );
+ friend quat_t operator*( quat_t a, float b );
+ friend quat_t operator*( float a, quat_t b );
+ quat_t &operator*=( float a );
-friend int operator==( quat_t a, quat_t b );
-friend int operator!=( quat_t a, quat_t b );
+ friend int operator==( quat_t a, quat_t b );
+ friend int operator!=( quat_t a, quat_t b );
-float Length( void );
-quat_t &Normalize( void );
+ float Length( void );
+ quat_t &Normalize( void );
-quat_t operator-();
+ quat_t operator-();
};
inline quat_t::quat_t() {
this->w = w;
}
-inline void quat_t::operator=( quat_t a ) {
- x = a.x;
- y = a.y;
- z = a.z;
- w = a.w;
-}
-
inline quat_t operator+( quat_t a, quat_t b ) {
return quat_t( a.x + b.x, a.y + b.y, a.z + b.z, a.w + b.w );
}