37 #ifndef INCLUDED_IMATHFRAME_H 38 #define INCLUDED_IMATHFRAME_H 42 template<
class T>
class Vec3;
99 int i = fabs( t[0] ) < fabs( t[1] ) ? 0 : 1;
100 if( fabs( t[2] ) < fabs( t[i] )) i = 2;
102 Vec3<T> v( 0.0, 0.0, 0.0 ); v[i] = 1.0;
110 M[0][0] = t[0]; M[0][1] = t[1]; M[0][2] = t[2]; M[0][3] = 0.0,
111 M[1][0] = n[0]; M[1][1] = n[1]; M[1][2] = n[2]; M[1][3] = 0.0,
112 M[2][0] = b[0]; M[2][1] = b[1]; M[2][2] = b[2]; M[2][3] = 0.0,
113 M[3][0] = pi[0]; M[3][1] = pi[1]; M[3][2] = pi[2]; M[3][3] = 1.0;
140 T dot = ti.
dot( tj );
146 if( dot > 1.0 ) dot = 1.0;
147 else if( dot < -1.0 ) dot = -1.0;
153 if( a.
length() != 0.0 && r != 0.0 )
159 return Mi * Ti * R * Tj;
T dot(const Vec3 &v) const
Definition: ImathVec.h:1466
Definition: ImathFrame.h:42
Definition: ImathFrame.h:43
Matrix44< T > firstFrame(const Vec3< T > &, const Vec3< T > &, const Vec3< T > &)
Definition: ImathFrame.h:89
T length() const
Definition: ImathVec.h:1662
const Matrix44 & setAxisAngle(const Vec3< S > &ax, S ang)
const Matrix44 & translate(const Vec3< S > &t)
Matrix44< T > lastFrame(const Matrix44< T > &, const Vec3< T > &, const Vec3< T > &)
Definition: ImathFrame.h:178
const Vec3 & normalize()
Definition: ImathVec.h:1681
Vec3 cross(const Vec3 &v) const
Definition: ImathVec.h:1480
Matrix44< T > nextFrame(const Matrix44< T > &, const Vec3< T > &, const Vec3< T > &, Vec3< T > &, Vec3< T > &)
Definition: ImathFrame.h:127
Definition: ImathBox.h:67
const Vec3 & normalizeExc()
Definition: ImathVec.h:1703