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참조하세요 .

primarySubViewport : QRect

이 속성은 그래프의 기본 보기를 대상으로 하는 뷰포트 내부의 현재 하위 뷰포트 사각형을 보유합니다.

기본 하위 뷰포트가 명시적으로 설정되지 않은 경우 viewport()의 1/5이 됩니다.

참고: primarySubViewport를 뷰포트보다 크거나 뷰포트 외부로 설정하면 그에 따라 뷰포트의 크기가 조정됩니다.

함수에 액세스합니다:

QRect primarySubViewport() const
void setPrimarySubViewport(QRect primarySubViewport)

알림 신호:

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::selectionModeQtGraphs3D::SelectionFlag::Row 또는 QtGraphs3D::SelectionFlag::Column 이 유효한 선택 항목으로 설정되어 있어야 합니다.

참고: 모든 그래프가 2D 슬라이싱 보기를 지원하는 것은 아닙니다.

기능에 액세스합니다:

bool isSlicingActive() const
void setSlicingActive(bool isSlicing)

알림 신호:

void slicingActiveChanged(bool isSlicingActive)

[read-only] viewport : const 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 이 됩니다.

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