Spec-Zone.ru › Qt

Класс Q3DScene

Класс Q3DScene предоставляет описание 3D сцены, которая визуализируется. Подробнее...

Заголовок: #include <Q3DScene>
С момента: QtDataVisualization 1.0
Инициализируется: Scene3D
Наследует: QObject
  • Список всех членов, включая унаследованные

Свойства

  • activeCamera : Q3DCamera*
  • activeLight : Q3DLight*
  • devicePixelRatio : float
  • graphPositionQuery : QPoint
  • primarySubViewport : QRect
  • secondarySubViewport : QRect
  • secondarySubviewOnTop : bool
  • selectionQueryPosition : QPoint
  • slicingActive : bool
  • viewport : const QRect

Открытые функции

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

Примечание: Установка 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)

Документация по членам-функциям

Q3DScene::Q3DScene(QObject *parent = nullptr)

Создаёт базовую сцену с одним источником света и одной камерой. Дополнительный параметр parent передаётся конструктору QObject.

[virtual] 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 только в том случае, если вторичная область просмотра расположена поверх остальных.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/q3dscene.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API