Тип QML Object3D
Абстрактный базовый тип всех 3D узлов и ресурсов. Подробнее...
| Заявление об импорте: | import QtQuick3D |
| Создаёт: | QQuick3DObject |
| Наследует от: | |
| Наследуется: | Эффект, Геометрия, Элемент списка экземпляров, Диапазон экземпляров, Инкапсулирование, Материал, Узел, Particle3D, Среда сцены, Текстура и Данные текстуры |
Свойства
- children : список<Object3D>
- data : список<Объект>
- родитель : Object3D
- ресурсы : список<Объект>
- состояние : строка
- состояния : список<Состояние>
- переходы : список<Переход>
Подробное описание
Object3D — базовый класс для всех типов Qt Quick 3D. Сюда входят:
- Пространственные типы, представляющие объекты в 3D-сцене; они обычно имеют положение и/или направление. Например, Модель, Камера или Источник света. Такие типы наследуются от Узел, который, в свою очередь, наследуется от Object3D.
- Типы ресурсов, которые сами по себе не представляют объект в 3D-мире, но служат компонентами для подклассов Узел, предоставляя данные определенного типа. Это, среди прочего, Материал, Геометрия и Текстура.
Помимо перечисленных типов, Object3D также может служить родителем для элементов Qt Quick, а также для произвольных экземпляров QObject. Для получения дополнительной информации об добавлении 2D-элементов в 3D-сцену см. Сцены Qt Quick 3D с 2D-контентом.
См. также Узел.
Документация по свойствам
Свойство children содержит список визуальных дочерних элементов этого объекта. Свойство ресурсов содержит невизуальные ресурсы, которые вы хотите получить по имени.
В целом, нет необходимости ссылаться на эти свойства при добавлении дочерних объектов или ресурсов, поскольку свойство 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.2/qml-qtquick3d-object3d.html