Spec-Zone.ru › Qt 5.9

Класс 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
  • 1 свойство унаследовано от QObject

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

Q3DScene(QObject *parent = Q_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
  • 32 открытые функции унаследованы от QObject

Сигналы

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)
  • 2 сигнала унаследованы от QObject

Статические открытые члены

QPoint invalidSelectionPoint()
  • 11 статических открытых членов унаследованы от QObject

Дополнительные унаследованные члены

  • 1 открытый слот унаследован от QObject
  • 9 защищенных функций унаследованы от QObject

Подробное описание

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

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

Примечание: Установка основного подпредставления больше или вне области представления соответственно изменяет размеры представления.

Функции доступа:

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)

viewport : const QRect

Это свойство содержит только для чтения прямоугольник текущего представления, на котором нацелена вся 3D-отрисовка.

Функции доступа:

QRect viewport() const

Сигнал уведомления:

void viewportChanged(const QRect &viewport)

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

Q3DScene::Q3DScene(QObject *parent = Q_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-5.9/q3dscene.html

Spec-Zone.ru

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