0

xAxisからピックスマップを回転させたいのですが、左上隅から回転するだけです(中心から回転させたい)コードは次のとおりです:

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);

translate メソッドは、原点をピックスマップの中心に変更しないようです。今、この問題を解決するための助けが欲しいです。

4

1 に答える 1

0

わかりました、問題は、回転メソッドの後に変換を元に戻さなかったことです。これは、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));
于 2015-07-19T14:20:50.057 に答える