이 페이지에서

Qt3DExtras::QOrbitCameraController Class

class Qt3DExtras::QOrbitCameraController

QOrbitCameraController 클래스를 사용하면 궤도 경로를 따라 장면 카메라를 제어할 수 있습니다. 더 보기...

헤더: #include <qorbitcameracontroller.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3dextras)
target_link_libraries(mytarget PRIVATE Qt6::3dextras)
qmake: QT += 3dextras
상속: Qt3DExtras::QAbstractCameraController
상태: 사용 중단됨

이 클래스는 더 이상 사용되지 않습니다. 새로운 코드에서는 이 클래스를 사용하지 말 것을 강력히 권장합니다.

속성

공개 함수

bool inversePan() const
bool inverseTilt() const
bool inverseXTranslate() const
bool inverseYTranslate() const
QVector3D upVector() const
float zoomInLimit() const
bool zoomTranslateViewCenter() const

공개 슬롯

void setInversePan(bool isInverse)
void setInverseTilt(bool isInverse)
void setInverseXTranslate(bool isInverse)
void setInverseYTranslate(bool isInverse)
void setUpVector(const QVector3D &upVector)
void setZoomInLimit(float zoomInLimit)
void setZoomTranslateViewCenter(bool isTranslate)

신호

void inversePanChanged(bool isInverse)
void inverseTiltChanged(bool isInverse)
void inverseXTranslateChanged(bool isInverse)
void inverseYTranslateChanged(bool isInverse)
void upVectorChanged(const QVector3D &upVector)
void zoomInLimitChanged()
void zoomTranslateViewCenterChanged(bool isTranslate)

상세 설명

제어 항목은 다음과 같습니다:

입력동작
마우스 왼쪽 버튼마우스 왼쪽 버튼을 누른 상태에서 x축을 따라 마우스를 움직이면 카메라가 좌우로 이동하고, y축을 따라 움직이면 카메라가 상하로 이동합니다.
마우스 오른쪽 버튼마우스 오른쪽 버튼을 누른 상태에서 x축을 따라 마우스를 움직이면 카메라가 카메라 시야 중심을 중심으로 좌우로 이동하고, y축을 따라 움직이면 카메라 시야 중심을 중심으로 위아래로 기울어집니다.
마우스 왼쪽 및 오른쪽 버튼 모두마우스 왼쪽 버튼과 오른쪽 버튼을 모두 누른 상태에서 마우스를 y축 방향으로 움직이면 시야 중심을 변경하지 않고 카메라를 확대하거나 축소합니다.
마우스 스크롤 휠시야 중심을 변경하지 않고 카메라를 확대 및 축소합니다.
화살표 키카메라 뷰포트에 상대적으로 카메라를 수직 및 수평으로 이동합니다.
Page Up 및 Page Down 키카메라를 앞뒤로 이동합니다.
Shift 키위쪽 및 아래쪽 화살표 키의 동작을 변경하여, 뷰 중심을 변경하지 않고 카메라를 확대 및 축소합니다. 다른 이동 키는 비활성화됩니다.
Alt 키화살표 키의 동작을 변경하여 뷰 중심을 기준으로 카메라를 좌우로 이동(팬)하고 위아래로 기울이(틸트)게 합니다. Page Up 및 Page Down 키는 비활성화됩니다.
Esc 키카메라 뷰포트 내에 전체 장면이 보이도록 카메라를 이동합니다.

속성 설명서

inversePan : bool

패닝이 반전되는지 여부를 지정합니다.

이 기능이 활성화되면, 수평 패닝 동작 시 카메라가 뷰 중심을 기준으로 반대 방향으로 회전합니다.

액세스 함수:

bool inversePan() const
void setInversePan(bool isInverse)

알림 신호:

void inversePanChanged(bool isInverse)

inverseTilt : bool

틸트 방향이 반전되어 있는지 여부를 나타냅니다.

이 기능이 활성화되면, 수직 틸트 동작 시 카메라가 뷰 센터를 중심으로 반대 방향으로 회전합니다.

액세스 함수:

bool inverseTilt() const
void setInverseTilt(bool isInverse)

알림 신호:

void inverseTiltChanged(bool isInverse)

inverseXTranslate : bool

수평 이동 방향이 반전되는지 여부를 지정합니다.

이 옵션이 활성화되면, 마우스의 수평 이동 및 입력에 따라 카메라가 반대 방향으로 이동합니다.

액세스 함수:

bool inverseXTranslate() const
void setInverseXTranslate(bool isInverse)

알림 신호:

void inverseXTranslateChanged(bool isInverse)

inverseYTranslate : bool

수직 이동 방향이 반전되었는지 여부를 나타냅니다.

이 옵션이 활성화되면 마우스의 수직 이동 및 입력에 따라 카메라가 반대 방향으로 이동합니다.

액세스 함수:

bool inverseYTranslate() const
void setInverseYTranslate(bool isInverse)

알림 신호:

void inverseYTranslateChanged(bool isInverse)

upVector : QVector3D

카메라의 궤도 회전을 위한 상향 벡터를 저장합니다.

'up' 벡터는 카메라가 궤도 회전을 하는 수직 축을 정의합니다. 기본값은 (0.0, 1.0, 0.0)입니다.

액세스 함수:

QVector3D upVector() const
void setUpVector(const QVector3D &upVector)

알림 신호:

void upVectorChanged(const QVector3D &upVector)

zoomInLimit : float

현재 확대 한계를 저장합니다. 확대 한계는 카메라가 뷰 중심에서 얼마나 가까이까지 확대될 수 있는지를 결정합니다.

액세스 함수:

float zoomInLimit() const
void setZoomInLimit(float zoomInLimit)

알림 신호:

void zoomInLimitChanged()

zoomTranslateViewCenter : bool

확대/축소 작업 시 뷰 중심이 이동하는지 여부를 지정합니다.

이 옵션이 활성화되면 확대/축소 시 뷰 중심이 이동합니다. 비활성화되면 확대/축소 작업 중 카메라 위치만 변경됩니다. 기본값은 true입니다.

액세스 함수:

bool zoomTranslateViewCenter() const
void setZoomTranslateViewCenter(bool isTranslate)

알림 신호:

void zoomTranslateViewCenterChanged(bool isTranslate)

© 2026 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.