Q3DScene Class
Q3DScene 클래스는 시각화 중인 3D 장면에 대한 설명을 제공합니다. 더 보기...
헤더: | #include <Q3DScene> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS DataVisualization) target_link_libraries(mytarget PRIVATE Qt6::DataVisualization) |
qmake: | QT += datavisualization |
이후: | QtDataVisualization 1.0 |
QML에서: | Scene3D |
상속합니다: | QObject |
속성
|
|
공공 기능
Q3DScene(QObject *parent = nullptr) | |
virtual | ~Q3DScene() |
Q3DCamera * | activeCamera() const |
Q3DLight * | activeLight() const |
float | devicePixelRatio() const |
QPoint | graphPositionQuery() const |
bool | isPointInPrimarySubView(const QPoint &point) |
bool | isPointInSecondarySubView(const QPoint &point) |
bool | isSecondarySubviewOnTop() const |
bool | isSlicingActive() const |
QRect | primarySubViewport() const |
QRect | secondarySubViewport() const |
QPoint | selectionQueryPosition() const |
void | setActiveCamera(Q3DCamera *camera) |
void | setActiveLight(Q3DLight *light) |
void | setDevicePixelRatio(float pixelRatio) |
void | setGraphPositionQuery(const QPoint &point) |
void | setPrimarySubViewport(const QRect &primarySubViewport) |
void | setSecondarySubViewport(const QRect &secondarySubViewport) |
void | setSecondarySubviewOnTop(bool isSecondaryOnTop) |
void | setSelectionQueryPosition(const QPoint &point) |
void | setSlicingActive(bool isSlicing) |
QRect | viewport() const |
신호
void | activeCameraChanged(Q3DCamera *camera) |
void | activeLightChanged(Q3DLight *light) |
void | devicePixelRatioChanged(float pixelRatio) |
void | graphPositionQueryChanged(const QPoint &position) |
void | primarySubViewportChanged(const QRect &subViewport) |
void | secondarySubViewportChanged(const QRect &subViewport) |
void | secondarySubviewOnTopChanged(bool isSecondaryOnTop) |
void | selectionQueryPositionChanged(const QPoint &position) |
void | slicingActiveChanged(bool isSlicingActive) |
void | viewportChanged(const QRect &viewport) |
정적 공용 멤버
QPoint | invalidSelectionPoint() |
상세 설명
3D 씬은 하나의 활성 카메라와 하나의 활성 광원을 포함합니다. 시각화된 데이터는 고정된 위치에 있다고 가정합니다.
3D 장면은 또한 시각화 렌더링이 수행되는 뷰포트, 기본 3D 데이터 시각화 뷰가 있는 뷰포트 내부의 기본 하위 뷰포트 및 데이터의 2D 슬라이스 뷰가 있는 보조 하위 뷰포트를 추적합니다. 하위 뷰포트는 기본적으로 Q3DScene 에 의해 크기가 조정됩니다. 크기 조정 동작을 재정의하려면 viewportChanged() 및 slicingActiveChanged() 신호를 모두 수신하고 그에 따라 하위 뷰포트를 다시 계산해야 합니다.
또한 씬에는 보조 2D 슬라이싱 뷰가 현재 활성화되어 있는지 여부를 추적하기 위한 플래그가 있습니다.
참고: 모든 시각화가 보조 2D 슬라이싱 뷰를 지원하는 것은 아닙니다.
속성 문서
activeCamera : Q3DCamera*
이 프로퍼티는 3D 씬에서 현재 활성화된 카메라를 보유합니다.
새 Q3DCamera 객체가 설정되면 자동으로 씬의 자식으로 추가됩니다.
함수에 액세스합니다:
Q3DCamera * | activeCamera() const |
void | setActiveCamera(Q3DCamera *camera) |
알림 신호:
void | activeCameraChanged(Q3DCamera *camera) |
activeLight : Q3DLight*
이 프로퍼티는 3D 씬에서 현재 활성화된 조명을 보유합니다.
새로운 Q3DLight 오브젝트가 설정되면 자동으로 씬의 자식으로 추가됩니다.
함수에 액세스합니다:
Q3DLight * | activeLight() const |
void | setActiveLight(Q3DLight *light) |
알림 신호:
void | activeLightChanged(Q3DLight *light) |
devicePixelRatio : float
이 속성은 입력 좌표를 픽셀 좌표에 매핑할 때 사용되는 디바이스 픽셀 비율을 보유합니다.
함수에 액세스합니다:
float | devicePixelRatio() const |
void | setDevicePixelRatio(float pixelRatio) |
알림 신호:
void | devicePixelRatioChanged(float pixelRatio) |
graphPositionQuery : QPoint
이 프로퍼티에는 씬에서 그래프 위치 쿼리로 처리해야 하는 사용자 입력의 좌표가 저장됩니다.
이 속성이 invalidSelectionPoint() 이외의 값으로 설정되면 그래프는 그래프 위치를 기본 뷰포트 내의 지정된 좌표에 일치시키려고 시도합니다. 렌더링 패스가 끝나면 이 프로퍼티는 기본 상태인 invalidSelectionPoint()로 반환됩니다. 쿼리된 그래프 위치는 다음 렌더링 패스 후에 QAbstract3DGraph::queriedGraphPosition 속성에서 읽을 수 있습니다.
특정 화면 위치와 일치하는 정확한 3D 좌표는 하나도 없으므로 일관성을 유지하기 위해 쿼리는 항상 그래프를 둘러싼 보이지 않는 상자의 안쪽을 기준으로 수행됩니다.
참고: 막대 그래프는 그래프 바닥 수준에서만 그래프 위치 쿼리를 허용합니다.
기능에 액세스합니다:
QPoint | graphPositionQuery() const |
void | setGraphPositionQuery(const QPoint &point) |
알림 신호:
void | graphPositionQueryChanged(const QPoint &position) |
QAbstract3DGraph::queriedGraphPosition 를참조하세요 .
primarySubViewport : QRect
이 속성은 데이터 시각화의 주 뷰를 대상으로 하는 뷰포트 내부의 현재 하위 뷰포트 사각형을 보유합니다.
isSlicingActive()가 false
인 경우 기본 하위 뷰포트는 viewport()와 같습니다. isSlicingActive ()가 true
이고 주 하위 뷰포트가 명시적으로 설정되지 않은 경우 viewport()의 1/5이 됩니다.
참고: primarySubViewport를 뷰포트보다 크거나 뷰포트 외부로 설정하면 그에 따라 뷰포트의 크기가 조정됩니다.
함수에 액세스합니다:
QRect | primarySubViewport() const |
void | setPrimarySubViewport(const QRect &primarySubViewport) |
알림 신호:
void | primarySubViewportChanged(const QRect &subViewport) |
secondarySubViewport : QRect
이 속성은 뷰포트 내부에 보조 뷰포트 직사각형을 보관합니다.
보조 뷰포트는 일부 시각화에서 2D 슬라이스 뷰를 그리는 데 사용됩니다. 명시적으로 설정하지 않은 경우 QRect 와 같으며 isSlicingActive()가 true
인 경우 viewport 와 같습니다.
참고: 보조 하위 뷰포트가 뷰포트보다 크거나 뷰포트 외부에 있는 경우 뷰포트의 크기가 그에 따라 조정됩니다.
기능에 액세스합니다:
QRect | secondarySubViewport() const |
void | setSecondarySubViewport(const QRect &secondarySubViewport) |
알림 신호:
void | secondarySubViewportChanged(const QRect &subViewport) |
secondarySubviewOnTop : bool
이 속성은 2D 슬라이싱 뷰 또는 3D 뷰가 위에 그려지는지 여부를 유지합니다.
함수에 액세스합니다:
bool | isSecondarySubviewOnTop() const |
void | setSecondarySubviewOnTop(bool isSecondaryOnTop) |
알림 신호:
void | secondarySubviewOnTopChanged(bool isSecondaryOnTop) |
selectionQueryPosition : QPoint
이 속성은 씬에서 선택으로 처리해야 하는 사용자 입력의 좌표를 보유합니다.
이 속성이 invalidSelectionPoint() 이외의 값으로 설정된 경우 그래프는 기본 뷰포트 내에서 지정된 좌표에서 데이터 항목, 축 레이블 또는 사용자 지정 항목을 선택하려고 시도합니다. 렌더링 패스가 끝나면 속성은 기본 상태인 invalidSelectionPoint()로 반환됩니다.
함수에 액세스합니다:
QPoint | selectionQueryPosition() const |
void | setSelectionQueryPosition(const QPoint &point) |
알림 신호:
void | selectionQueryPositionChanged(const QPoint &position) |
QAbstract3DGraph::selectedElement 를참조하세요 .
slicingActive : bool
이 속성은 2D 슬라이싱 뷰가 현재 활성화되어 있는지 여부를 보유합니다.
true
, QAbstract3DGraph::selectionMode 에 QAbstract3DGraph::SelectionRow 또는 QAbstract3DGraph::SelectionColumn 이 유효한 선택 항목으로 설정되어 있어야 합니다.
참고: 모든 시각화가 2D 슬라이싱 보기를 지원하는 것은 아닙니다.
기능에 액세스합니다:
bool | isSlicingActive() const |
void | setSlicingActive(bool isSlicing) |
알림 신호:
void | slicingActiveChanged(bool isSlicingActive) |
[read-only]
viewport : const QRect
이 프로퍼티에는 모든 3D 렌더링의 타깃이 되는 현재 뷰포트 사각형이 포함된 읽기 전용 프로퍼티가 있습니다.
함수에 액세스합니다:
QRect | viewport() const |
노티파이 신호:
void | viewportChanged(const QRect &viewport) |
멤버 함수 문서
[explicit]
Q3DScene::Q3DScene(QObject *parent = nullptr)
하나의 조명과 하나의 카메라가 있는 기본 씬을 생성합니다. 선택적 parent 파라미터를 지정한 다음 QObject 생성자에 전달할 수 있습니다.
[virtual noexcept]
Q3DScene::~Q3DScene()
3D 씬과 그 안에 포함된 모든 오브젝트를 파괴합니다.
[static]
QPoint Q3DScene::invalidSelectionPoint()
잘못된 선택 위치를 나타내는 QPoint 을 반환합니다.
bool Q3DScene::isPointInPrimarySubView(const QPoint &point)
주어진 point 이 기본 하위 뷰 안에 있는지 여부를 반환합니다. 지점이 기본 하위 뷰 안에 있으면 true
을 반환합니다.
참고: 하위 뷰가 겹쳐져 있고 지정된 point 이 두 뷰 모두에 있는 경우 기본 하위 뷰가 위에 있는 경우에만 true
이 반환됩니다.
bool Q3DScene::isPointInSecondarySubView(const QPoint &point)
주어진 point 이 보조 서브뷰 안에 있는지 여부를 반환합니다. 지점이 보조 서브뷰 안에 있으면 true
을 반환합니다.
참고: 하위 뷰가 겹쳐져 있고 지정된 point 이 두 뷰 모두에 있는 경우, 결과는 보조 하위 뷰가 위에 있는 경우에만 true
이 됩니다.
© 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.