Spec-Zone.ru › Qt 6.0

Тип QML Object3D

Абстрактный базовый тип всех 3D узлов и ресурсов. Подробнее...

Оператор импорта: import QtQuick3D .
Создаёт: QQuick3DObject
Наследует от:

QtObject

Наследуется:

Эффект, Геометрия, Материал, Узел, Среда сцены, Текстура и Данные текстуры

  • Список всех членов, включая унаследованные

Свойства

  • children : список<Object3D>
  • data : список<Объект>
  • parent : Object3D
  • resources : список<Объект>
  • состояние : строка
  • states : список<Состояние>
  • переходы : список<Переход>

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

Object3D — базовый класс для всех типов Qt Quick 3D. Это включает:

  • Пространственные типы, представляющие объекты в 3D-сцене, у которых обычно есть положение и/или направление. Например, Модель, Камера или Свет. Такие типы наследуют от Узла, который, в свою очередь, наследует от Object3D.
  • Типы ресурсов, которые сами по себе не представляют объект в 3D-мире, но служат компонентами для подклассов Узла, предоставляя данные определённого типа. Это, среди прочего, Материал, Геометрия и Текстура.

Помимо вышеперечисленных типов, Object3D также может служить родителем для элементов Qt Quick, а также произвольных экземпляров QObject. Для получения дополнительной информации о добавлении 2D-элементов в 3D-сцену см. Qt Quick 3D-сцены с 2D-содержимым.

См. также Узел.

Документация по свойствам

children : список<Object3D>

Свойство children содержит список визуальных дочерних элементов этого объекта. Свойство resources содержит невизуальные ресурсы, которые вы хотите ссылаться по имени.

В целом, обращаться к этим свойствам при добавлении дочерних объектов или ресурсов не требуется, так как свойство data по умолчанию автоматически назначит дочерние объекты свойствам children и resources соответственно. Дополнительную информацию см. в документации к QtQuick3D::Object3D::data.

Примечание: QtQuick3D::Object3D::resources не возвращает список 3D-ресурсов, несмотря на название. Название происходит из семантики QQuickItem. 3D-ресурсы являются подклассами QQuickObjec3D и поэтому будут возвращены в списке QtQuick3D::Objec3D::children.

[по умолчанию] data : список<Объект>

Свойство data позволяет свободно смешивать дочерние элементы Object3D и ресурсы в объекте. Если вы присвоите Object3D в список data, он станет дочерним элементом, а если присвоите любой другой тип объекта, он будет добавлен как ресурс.

Например:

Object3D {
    Node {}
    DirectionalLight {}
    Timer {}
}

вместо:

Item {
    children: [
        Node {},
        DirectionalLight {}
    ]
    resources: [
        Timer {}
    ]
}

В общем случае обращаться к свойству data не требуется, так как это свойство по умолчанию для Object3D, и все дочерние объекты автоматически назначаются этому свойству.

parent : Object3D

Это свойство хранит родительский элемент Object3D в 3D-сцене.

Примечание: Родительский элемент Object3D необязательно совпадает с его родительским объектом. Это необходимо, потому что родительский объект может быть элементом, не являющимся типом Object3D, например, корневым объектом в сцене.

состояние : строка

Это свойство хранит имя текущего состояния объекта.

Если элемент находится в своём начальном состоянии, то есть не было установлено явного состояния, то это свойство содержит пустую строку. Аналогично, вы можете вернуть элемент в исходное состояние, установив это свойство в пустую строку.

См. также Состояния в Qt Quick.

states : список<Состояние>

Это свойство хранит список возможных состояний для этого объекта. Чтобы изменить состояние этого объекта, установите свойство состояние на одно из этих состояний или установите свойство состояние в пустую строку, чтобы вернуть объект в начальное состояние.

Это свойство задаётся как список объектов Состояние. Например, ниже показан QtQuick3D::Node с состояниями "above_state" и "below_state":

import QtQuick
import QtQuick3D

Node {
    id: root
    y: 0

    states: [
        State {
            name: "above_state"
            PropertyChanges { target: root; y: 100 }
        },
        State {
            name: "below_state"
            PropertyChanges { target: root; y: -100 }
        }
    ]
}

Дополнительные сведения о работе со состояниями и переходами см. в разделах Состояния в Qt Quick и Анимация и переходы в Qt Quick.

Примечание: Это свойство работает так же, как свойство QtQuick::Item::states, но необходимо, так как QtQuick3D::Object3D не является подклассом QtQuick::Item.

См. также QtQuick3D::Object3D::transitions.

переходы : список<Переход>

Это свойство хранит список переходов для этого объекта. Они определяют переходы, которые будут применяться к объекту всякий раз, когда он изменяет свойство состояние.

Это свойство задаётся как список объектов Переход. Например:

import QtQuick
import QtQuick3D

Node {
    transitions: [
        Transition {
            //...
        },
        Transition {
            //...
        }
    ]
}

Дополнительные сведения о работе со состояниями и переходами см. в разделах Состояния в Qt Quick и Анимация и переходы в Qt Quick.

Примечание: Это свойство работает так же, как свойство QtQuick::Item::transitions, но необходимо, так как QtQuick3D::Object3D не является подклассом QtQuick::Item.

См. также QtQuick3D::Object3D::states.

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

Spec-Zone.ru

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