Q3DScene Class
Q3DScene 클래스는 시각화되는 3D 씬에 대한 설명을 제공합니다. 더 보기...
| 헤더: | #include <Q3DScene> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Graphs) target_link_libraries(mytarget PRIVATE Qt6::Graphs) |
| qmake: | QT += graphs |
| QML에서: | Scene3D |
| 상속: | QObject |
- 상속받은 멤버를 포함한 모든 멤버 목록
- Q3DScene은 3D용Qt Graphs C++ 클래스의 일부입니다.
속성
|
|
공개 함수
| Q3DScene(QObject *parent = nullptr) | |
| virtual | ~Q3DScene() override |
| qreal | devicePixelRatio() const |
| QPoint | graphPositionQuery() const |
| QPoint | invalidSelectionPoint() const |
| bool | isPointInPrimarySubView(QPoint point) |
| bool | isPointInSecondarySubView(QPoint point) |
| bool | isSecondarySubviewOnTop() const |
| bool | isSlicingActive() const |
| QRect | primarySubViewport() const |
| QRect | secondarySubViewport() const |
| QPoint | selectionQueryPosition() const |
| void | setDevicePixelRatio(qreal pixelRatio) |
| void | setGraphPositionQuery(QPoint point) |
| void | setPrimarySubViewport(QRect primarySubViewport) |
| void | setSecondarySubViewport(QRect secondarySubViewport) |
| void | setSecondarySubviewOnTop(bool isSecondaryOnTop) |
| void | setSelectionQueryPosition(QPoint point) |
| void | setSlicingActive(bool isSlicing) |
| QRect | viewport() const |
신호
| void | devicePixelRatioChanged(qreal pixelRatio) |
| void | graphPositionQueryChanged(QPoint position) |
| void | primarySubViewportChanged(QRect subViewport) |
| void | secondarySubViewportChanged(QRect subViewport) |
| void | secondarySubviewOnTopChanged(bool isSecondaryOnTop) |
| void | selectionQueryPositionChanged(QPoint position) |
| void | slicingActiveChanged(bool isSlicingActive) |
| void | viewportChanged(QRect viewport) |
상세 설명
3D 씬에는 하나의 활성 카메라와 하나의 활성 광원이 포함됩니다. 시각화된 데이터는 고정된 위치에 있는 것으로 가정합니다.
또한 3D 씬은 그래프 렌더링이 수행되는 뷰포트, 메인 3D 그래프 뷰가 위치한 뷰포트 내의 주 하위 뷰포트, 그리고 데이터의 2D 슬라이스 뷰가 위치한 보조 하위 뷰포트를 추적합니다. 서브뷰포트의 크기는 기본적으로 ` Q3DScene`에 의해 조정됩니다. 크기 조정 동작을 재정의하려면 ` viewportChanged()` 및 ` slicingActiveChanged()` 신호를 모두 수신하고 그에 따라 서브뷰포트의 크기를 재계산해야 합니다.
또한 씬에는 보조 2D 슬라이싱 뷰가 현재 활성화되어 있는지 여부를 추적하는 플래그가 있습니다.
참고: 모든 그래프가 보조 2D 슬라이싱 뷰를 지원하는 것은아닙니다 .
속성 설명서
devicePixelRatio : qreal
이 속성은 입력 좌표를 픽셀 좌표로 매핑할 때 사용되는 장치 픽셀 비율을 저장합니다.
액세스 함수:
| qreal | devicePixelRatio() const |
| void | setDevicePixelRatio(qreal pixelRatio) |
알림 신호:
| void | devicePixelRatioChanged(qreal pixelRatio) |
graphPositionQuery : QPoint
이 속성은 씬에서 그래프 위치 쿼리로 처리해야 할 사용자 입력의 좌표를 저장합니다.
이 속성이 ` invalidSelectionPoint()` 이외의 값으로 설정된 경우, 그래프는 기본 뷰포트 내에서 지정된 좌표와 일치하는 그래프 위치를 찾으려고 시도합니다. 렌더링 패스가 끝나면 이 속성은 기본 상태인 ` invalidSelectionPoint()`로 복원됩니다. 쿼리된 그래프 위치는 다음 렌더링 패스가 끝난 후 ` Q3DGraphsWidgetItem::queriedGraphPosition ` 속성에서 읽을 수 있습니다.
특정 화면 위치에 정확히 일치하는 단일 3D 좌표는 존재하지 않으므로, 일관성을 유지하기 위해 쿼리는 항상 그래프를 둘러싼 보이지 않는 상자의 안쪽 면을 기준으로 수행됩니다.
참고: 막대 그래프의 경우 그래프 바닥 수준에서만 그래프 위치 쿼리가 가능합니다.
액세스 함수:
| QPoint | graphPositionQuery() const |
| void | setGraphPositionQuery(QPoint point) |
알림 신호:
| void | graphPositionQueryChanged(QPoint position) |
Q3DGraphsWidgetItem::queriedGraphPosition도 참조하십시오 .
[read-only] invalidSelectionPoint : const QPoint
이 속성은 유효하지 않은 선택 위치를 나타내는 점을 포함합니다.
액세스 함수:
| QPoint | invalidSelectionPoint() const |
primarySubViewport : QRect
이 속성은 그래프의 기본 뷰가 표시되는 뷰포트 내부의 현재 서브뷰포트 사각형을 저장합니다.
주 서브 뷰포트가 명시적으로 설정되지 않은 경우, ` viewport()`의 5분의 1 크기가 됩니다.
참고: primarySubViewport를 뷰포트보다 크게설정하거나 뷰포트 외부로설정하면 뷰포트의 크기가 그에 따라 조정됩니다.
액세스 함수:
| QRect | primarySubViewport() const |
| void | setPrimarySubViewport(QRect primarySubViewport) |
Notifier 신호:
| void | primarySubViewportChanged(QRect subViewport) |
secondarySubViewport : QRect
이 속성은 뷰포트 내부의 보조 뷰포트 사각형을 지정합니다.
보조 뷰포트는 일부 그래프에서 2D 슬라이스 뷰를 그리는 데 사용됩니다. 명시적으로 설정되지 않은 경우, 뷰포트의 크기와 동일하게 됩니다.
참고: 보조 서브 뷰포트가 뷰포트보다 크거나 뷰포트 외부에 있는경우 , 뷰포트의 크기가 그에 따라 조정됩니다.
액세스 함수:
| QRect | secondarySubViewport() const |
| void | setSecondarySubViewport(QRect secondarySubViewport) |
알림 신호:
| void | secondarySubViewportChanged(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(QPoint point) |
알림 신호:
| void | selectionQueryPositionChanged(QPoint position) |
Q3DGraphsWidgetItem::selectedElement도 참조하십시오 .
slicingActive : bool
이 속성은 2D 슬라이싱 뷰가 현재 활성화되어 있는지 여부를 나타냅니다.
true 인 경우, Q3DGraphsWidgetItem::selectionMode 에는 QtGraphs3D::SelectionFlag::Row 또는 QtGraphs3D::SelectionFlag::Column 중 하나가 유효한 선택 항목으로 설정되어 있어야 합니다.
참고: 모든 그래프가 2D 슬라이싱 보기를 지원하는 것은아닙니다 .
액세스 함수:
| bool | isSlicingActive() const |
| void | setSlicingActive(bool isSlicing) |
알림 신호:
| void | slicingActiveChanged(bool isSlicingActive) |
[read-only] viewport : QRect
이 속성은 모든 3D 렌더링의 대상이 되는 현재 뷰포트 사각형을 포함하는 읽기 전용 속성을 가집니다.
액세스 함수:
| QRect | viewport() const |
알림 신호:
| void | viewportChanged(QRect viewport) |
멤버 함수 문서
[explicit] Q3DScene::Q3DScene(QObject *parent = nullptr)
조명 하나와 카메라 하나가 포함된 기본 씬을 생성합니다. 선택 사항인 ` parent ` 매개변수를 지정할 수 있으며, 이 경우 해당 매개변수는 ` QObject ` 생성자에 전달됩니다.
[override virtual noexcept] Q3DScene::~Q3DScene()
3D 씬과 그 안에 포함된 모든 오브젝트를 삭제합니다.
QPoint Q3DScene::invalidSelectionPoint() const
유효하지 않은 선택 위치를 나타내는 ` QPoint `를 반환합니다.
참고: invalidSelectionPoint 속성에 대한게터 함수입니다.
bool Q3DScene::isPointInPrimarySubView(QPoint point)
주어진 좌표 point 가 주 하위 뷰 내에 있는지 여부를 반환합니다. 해당 점이 주 하위 뷰 내에 있는 경우 true 를 반환합니다.
참고: 서브뷰가 겹쳐져있고 , 주어진 ` point `가 두 서브뷰 모두 내에 위치하는경우 , 주 서브뷰가 위에 있을 때만 결과가 ` true `가 됩니다.
bool Q3DScene::isPointInSecondarySubView(QPoint point)
주어진 point 가 보조 서브뷰 내에 있는지 여부를 반환합니다. 해당 점이 보조 서브뷰 내에 있으면 true 를 반환합니다.
참고: 서브뷰가 겹쳐져있고 , 주어진 ` point `가 두 서브뷰 모두 안에 있는경우 , 두 번째 서브뷰가 위에 있을 때만 결과가 ` true `가 됩니다.
© 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.