fixed Matx33 * Point3 and Matx22 * Point operators (ticket #1299)

This commit is contained in:
Vadim Pisarevsky 2011-08-12 12:54:38 +00:00
parent 50d70cf9c6
commit d37beb4074

View File

@ -625,14 +625,14 @@ Matx<_Tp, m, n> operator * (const Matx<_Tp, m, l>& a, const Matx<_Tp, l, n>& b)
template<typename _Tp> static inline template<typename _Tp> static inline
Point_<_Tp> operator * (const Matx<_Tp, 2, 2>& a, const Point_<_Tp>& b) Point_<_Tp> operator * (const Matx<_Tp, 2, 2>& a, const Point_<_Tp>& b)
{ {
return Point_<_Tp>(a*Vec<_Tp,2>(b)); return Point_<_Tp>(a*Vec<_Tp,2>(b.x,b.y));
} }
template<typename _Tp> static inline template<typename _Tp> static inline
Point3_<_Tp> operator * (const Matx<_Tp, 3, 3>& a, const Point3_<_Tp>& b) Point3_<_Tp> operator * (const Matx<_Tp, 3, 3>& a, const Point3_<_Tp>& b)
{ {
return Point3_<_Tp>(a*Vec<_Tp,3>(b)); return Point3_<_Tp>(a*Vec<_Tp,3>(b.x,b.y,b.z));
} }
@ -653,7 +653,7 @@ Matx<_Tp, 4, 1> operator * (const Matx<_Tp, 4, 4>& a, const Point3_<_Tp>& b)
template<typename _Tp> static inline template<typename _Tp> static inline
Scalar operator * (const Matx<_Tp, 4, 4>& a, const Scalar& b) Scalar operator * (const Matx<_Tp, 4, 4>& a, const Scalar& b)
{ {
return Scalar(a*Matx<_Tp, 4, 1>(b)); return Scalar(a*Matx<_Tp, 4, 1>(b[0],b[1],b[2],b[3]));
} }