//
// add the translation to this matrix
+// | 1 0 0 | | m_11 m_12 0 |
+// | 0 1 0 | x | m_21 m_22 0 |
+// | dx dy 1 | | m_tx m_ty 1 |
void wxAffineMatrix2D::Translate(wxDouble dx, wxDouble dy)
{
- m_tx += dx;
- m_ty += dy;
+ m_tx += m_11 * dx + m_21 * dy;
+ m_ty += m_12 * dx + m_22 * dy;
}
// add the scale to this matrix
wxAffineMatrix2D matrix;
matrix.Mirror(wxVERTICAL);
- matrix.Translate(0, m_bmpOrig.GetHeight() - 1);
+ matrix.Translate(0, -m_bmpOrig.GetHeight() + 1);
dc.SetTransformMatrix(matrix);
dc.DrawBitmap(m_bmpOrig, 0, 0);
}
wxAffineMatrix2D matrix;
matrix.Rotate(-0.5 * M_PI);
- matrix.Translate(m_bmpOrig.GetHeight(), 0);
+ matrix.Translate(0, -m_bmpOrig.GetHeight());
dc.SetTransformMatrix(matrix);
dc.DrawBitmap(m_bmpOrig, 0, 0);
}