Spec-Zone.ru › Qt 5.11

Класс 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 = 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
  • 34 открытых функции унаследованы от 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()
  • 10 статических открытых членов унаследованы от QObject

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

  • 1 открытый слот унаследован от QObject
  • 1 открытая переменная унаследована от QObject
  • 9 защищенные функции унаследованы от QObject
  • 2 защищенные переменные унаследованы от 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().

Примечание: Установка primarySubViewport, превышающего или выходящего за пределы viewport, приводит к соответствующему изменению размеров viewport.

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

QRect primarySubViewport() const
void setPrimarySubViewport(const QRect &primarySubViewport)

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

void primarySubViewportChanged(const QRect &subViewport)

secondarySubViewport : QRect

Это свойство содержит прямоугольник вторичного окна просмотра внутри окна просмотра.

Вторичное окно просмотра используется для отрисовки 2D-срезов в некоторых визуализациях. Если оно не было явно установлено, оно будет равно QRect. Если isSlicingActive() true, оно будет равно viewport.

Примечание: Если вторичное подокно просмотра больше или выходит за пределы viewport, 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 = 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/archives/qt-5.11/q3dscene.html

Spec-Zone.ru

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