Spec-Zone.ru › Qt 6.1

Тип QML Object3D

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

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

QtObject

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

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

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

Свойства

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

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

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, и, следовательно, все дочерние объекты автоматически назначаются этому свойству.

родитель : Object3D

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

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

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

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

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

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

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

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

Это свойство задаётся как список объектов Состояние. Например, ниже представлен 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.1/qml-qtquick3d-object3d.html

Spec-Zone.ru

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