28 template <
typename T >
36 : m_mat(m), m_transl(transl) {};
68 template <
typename T1,
typename T2 >
70 :
public std::binary_function<const Affine<T1> &, const numeric_array<T2,3>, numeric_array<typename combine<T1, T2>::type, 3> >
79 result_type
operator()(first_argument_type a, second_argument_type v)
const 81 return a.getMatrix() * v + a.getTransl();
88 template <
typename T1,
typename T2>
97 template <
typename T1,
typename T2>
void setMatrix(const Matrix3< T > &m)
std::binary_function< const Affine< T1 > &, const numeric_array< T2, 3 >, numeric_array< typename combine< T1, T2 >::type, 3 > > Base
A affine mathematical object.
Base::first_argument_type first_argument_type
Base::second_argument_type second_argument_type
Affine(const Matrix3< T > &m, const numeric_array< T, 3 > &transl)
Belongs to package Box Do not include directly, include til/Box.h instead.
numeric_array< T, 3 > & getTransl()
const Matrix3< T > & getMatrix() const
General macros, definitions and functions.
Defines empty classes that serves as labels.
const numeric_array< T, 3 > & getTransl() const
INLINE numeric_array< typename combine< T1, T2 >::type, 3 > operator*(const Affine< T1 > &a, const numeric_array< T2, 3 > &v)
Multiplication between a 3D affine transform and a 3D vector.
Base::result_type result_type
void setTransl(const numeric_array< T, 3 > &transl)
result_type operator()(first_argument_type a, second_argument_type v) const
void fill(sparse_vector< T, BaselinePolicy > &v, typename boost::call_traits< T >::param_type value)
Specialized fill for sparse_vector.
Matrix3< T > & getMatrix()