이 페이지에서

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(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.