this question의 결과로 Qt의 QTransform::rotate
기능에 대해 더 알고 싶습니다. In the documentation, 그것은 말한다Qt의 QTransform 회전 기능 이해
, 나는 내가 실제로QTransform & QTransform :: 회전 (qreal 각도 Qt는 :: 축 축 = Qt는 : Z 축)
지정된 축을 중심으로 소정의 각도만큼 반 시계 좌표계를 회전하며 행렬에 대한 참조를 반환합니다.
위젯 좌표에 정의 된 점에 QTransform을 적용하면 y 축이 아래쪽을 향하기 때문에 시계 방향으로 회전하는 것입니다.
각도는도 단위로 지정됩니다.
QPolygonF original = QPolygonF() << QPoint(0, 1) << QPoint(4, 1) << QPoint(4, 2) << QPoint(0, 2); QTransform transform = QTransform().translate(2, 2).rotate(90).translate(-2, -2); QPolygonF rotated = transform.map(original); qDebug() << rotated;
출력 :
내 앞의 질문에서QPolygonF(QPointF(3, 0) QPointF(3, 4) QPointF(2, 4) QPointF(2, 0))
rotate
기능에 따라, 90도 시계 반대 방향으로 회전해야하는
QPolygonF
시계 방향으로 회전하는 것을 배웠다
예 : 이 구형 :
여기에 회전하려면 왜이
입니까? 왜 문서에서 "widget coordinates"에 있지 않다고 믿을 때 QTransform::rotate
에 대한 호출이 실제로 시계 방향으로 회전하고 있다고 말하는 이유는 무엇입니까? 여기에 관련된 위젯은 없습니다.
스티븐 감사합니다. – Mitch