1 #ifndef DataFormat_Math_SSERot_H
2 #define DataFormat_Math_SSERot_H
34 axis[0].set(xx,xy,xz);
35 axis[1].set(yx,yy,yz);
36 axis[2].set(zx,zy,zz);
58 return v.template get1<0>()*
axis[0] + v.template get1<1>()*
axis[1] + v.template get1<2>()*
axis[2];
80 return _mm_or_ps(_mm_or_ps(_mm_dp_ps(
axis[0].vec,v.vec,0x71),
81 _mm_dp_ps(
axis[1].vec,v.vec,0x72)),
82 _mm_dp_ps(
axis[2].vec,v.vec,0x74)
139 return v.template get1<0>()*
axis[0] + v.template get1<1>()*
axis[1];
175 #endif // DataFormat_Math_SSERot_H
Vec4< T > rotateBack(Vec4< T > v) const
Rot2(Vec2< T > ix, Vec2< T > iy)
Vec2< T > rotate(Vec2< T > v) const
std::ostream & operator<<(std::ostream &out, const ALILine &li)
Rot2 rotate(Rot2 const &r) const
Rot2 rotateBack(Rot2 const &r) const
Rot2(T xx, T xy, T yx, T yy)
Rot3 rotate(Rot3 const &r) const
struct mathSSE::Rot3 __attribute__
Rot3(Vec4< T > ix, Vec4< T > iy, Vec4< T > iz)
Vec2< T > rotateBack(Vec2< T > v) const
Rot3(T xx, T xy, T xz, T yx, T yy, T yz, T zx, T zy, T zz)
MatrixMeschach operator*(const MatrixMeschach &mat1, const MatrixMeschach &mat2)
Rot3 rotateBack(Rot3 const &r) const
Vec4< T > rotate(Vec4< T > v) const