QGraphicsRotation Class
QGraphicsRotation 클래스는 주어진 축을 중심으로 회전 변환을 제공합니다. 더 보기...
Header: | #include <QGraphicsRotation> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake: | QT += widgets |
상속합니다: | QGraphicsTransform |
속성
공용 함수
QGraphicsRotation(QObject *parent = nullptr) | |
virtual | ~QGraphicsRotation() |
qreal | angle() const |
QVector3D | axis() const |
QVector3D | origin() const |
void | setAngle(qreal) |
void | setAxis(Qt::Axis axis) |
void | setAxis(const QVector3D &axis) |
void | setOrigin(const QVector3D &point) |
재구현된 공용 함수
virtual void | applyTo(QMatrix4x4 *matrix) const override |
신호
void | angleChanged() |
void | axisChanged() |
void | originChanged() |
상세 설명
축 프로퍼티에 QVector3D 를 할당하거나 setAxis 편의 함수에 Qt::Axis 인 경우 멤버를 전달하여 원하는 축을 제공할 수 있습니다. 기본적으로 축은 (0, 0, 1), 즉 Z축을 중심으로 회전합니다.
이제 이 축을 중심으로 회전할 각도 프로퍼티에 이 축을 중심으로 회전할 각도를 설명하는 각도 프로퍼티가 제공됩니다.
QGraphicsRotation은 회전 적용 방법을 제어하는 데 도움이 되는 특정 매개 변수를 제공합니다.
원점은 항목이 회전되는 지점입니다(즉, 항목의 나머지 부분이 회전될 때 부모를 기준으로 고정된 상태로 유지됨). 기본적으로 원점은 QPointF(0, 0)입니다.
각도 속성은 원점을 중심으로 항목을 시계 방향으로 회전할 각도 수를 제공합니다. 이 값은 음수일 수도 있으며, 시계 반대 방향으로 회전함을 나타냅니다. 예를 들어 항목이 여러 번 회전하는 애니메이션을 적용하려면 (-360, 360)도 이상의 회전 각도를 제공하는 것이 유용할 수 있습니다.
참고: 최종 회전은 3D 공간에서 회전한 후 다시 2D로 투영한 효과를 합친 것입니다. 여러 회전을 연속적으로 수행하면 모두 Z축을 중심으로 회전하지 않으면 예상대로 작동하지 않습니다.
QGraphicsTransform, QGraphicsItem::setRotation() 및 QTransform::rotate()도 참조하세요 .
속성 문서
angle : qreal
이 속성은 시계 방향 회전 각도를 도 단위로 저장합니다.
각도는 임의의 실수일 수 있으며 기본값은 0.0입니다. 값이 180이면 시계 방향으로 180도 회전합니다. 음수를 입력하면 항목이 시계 반대 방향으로 회전합니다. 일반적으로 회전 각도는 범위(-360, 360) 내에 있지만 이 범위를 벗어난 숫자를 입력할 수도 있습니다(예: 370도 각도는 10도와 동일한 결과를 제공합니다). 각도를 NaN으로 설정하면 회전이 발생하지 않습니다.
기능에 액세스합니다:
qreal | angle() const |
void | setAngle(qreal) |
알림 신호:
void | angleChanged() |
원점도참조하세요 .
axis : QVector3D
이 프로퍼티는 3D 공간에서 벡터로 지정된 회전 축을 보유합니다.
축은 3D 공간의 모든 축이 될 수 있습니다. 기본적으로 축은 (0, 0, 1)이며 Z축에 정렬됩니다. 다른 축을 제공하면 QGraphicsRotation 이 축을 중심으로 회전하는 변환을 제공합니다. 예를 들어 항목을 X축을 중심으로 회전하려면 (1, 0, 0)을 축으로 전달할 수 있습니다.
함수에 액세스합니다:
QVector3D | axis() const |
void | setAxis(const QVector3D &axis) |
void | setAxis(Qt::Axis axis) |
알림 신호:
void | axisChanged() |
QTransform 및 QGraphicsRotation::angle 을참조하세요 .
origin : QVector3D
이 속성은 3D 공간에서 회전의 원점을 유지합니다.
모든 회전은 이 지점을 기준으로 수행됩니다(즉, 항목이 회전될 때 이 지점은 부모를 기준으로 고정된 상태로 유지됩니다).
기능에 액세스합니다:
QVector3D | origin() const |
void | setOrigin(const QVector3D &point) |
알림 신호:
void | originChanged() |
angle 를참조하세요 .
멤버 함수 문서
QGraphicsRotation::QGraphicsRotation(QObject *parent = nullptr)
주어진 parent 로 새로운 QGraphicsRotation 을 구축합니다.
[virtual noexcept]
QGraphicsRotation::~QGraphicsRotation()
그래픽 로테이션을 파괴합니다.
[signal]
void QGraphicsRotation::angleChanged()
이 신호는 각도가 변경될 때마다 발산됩니다.
참고: 속성에 대한 알림 신호 angle.
QGraphicsRotation::angle도 참조하세요 .
[override virtual]
void QGraphicsRotation::applyTo(QMatrix4x4 *matrix) const
재구현합니다: QGraphicsTransform::applyTo(QMatrix4x4 *매트릭스) const.
[signal]
void QGraphicsRotation::axisChanged()
이 신호는 객체의 축이 변경될 때마다 발산됩니다.
참고: 속성에 대한 알림 신호 axis.
QGraphicsRotation::axis도 참조하세요 .
[signal]
void QGraphicsRotation::originChanged()
이 신호는 원점이 변경될 때마다 발신됩니다.
참고: 속성 원점에 대한 알림 신호입니다.
QGraphicsRotation::origin 를참조하세요 .
void QGraphicsRotation::setAxis(Qt::Axis axis)
축을 axis 로 설정하는 편의 기능입니다.
참고: QTransform 의 Qt::YAxis 회전은 3D 공간에서 올바른 수학적 회전과 반전됩니다. QGraphicsRotation 클래스는 올바른 수학적 회전을 구현합니다. 다음 두 코드 시퀀스는 동일한 변환을 수행합니다:
QTransform t; t.rotate(45, Qt::YAxis); QGraphicsRotation r; r.setAxis(Qt::YAxis); r.setAngle(-45);
참고: axis 속성에 대한 세터 함수.
axis()도 참조하세요 .
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.