我想从x轴旋转一个像素图,但它只是从左上角旋转。(我想让它从中心旋转)这是我的代码:
QTransform *X = new QTransform();
X->translate(pixmap().size().width() / 2, pixmap().size().height() / 2);
X->rotate(rtn, Qt::XAxis); //rtn is an angle
setTransform(*X);
似乎翻译方法没有改变原点到我的像素图的中心。现在我需要一些帮助来解决这个问题。
好的,问题是我没有转换回我的变换后旋转方法,这是适当的旋转从中心到xAxis:
setTransform(QTransform().translate(pixmap().size().width() / 2, pixmap().size().height() / 2).rotate(rtn, Qt::XAxis).translate(-pixmap().size().width() / 2, -pixmap().size().height() / 2));