Класс QAttribute
класс Qt3DCore::QAttributeОпределяет атрибут и как данные должны считываться из QBuffer. Подробнее...
| Заголовок: | #include <Qt3DCore/QAttribute> |
| CMake: | find_package(Qt6 COMPONENTS 3dcore REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::3dcore) |
| qmake: | QT += 3dcore |
| Создаётся из: | Attribute |
| Наследует: | Qt3DCore::QNode |
Типы публичного доступа
| перечисление | AttributeType { VertexAttribute, IndexAttribute, DrawIndirectAttribute } |
| перечисление | VertexBaseType { Byte, UnsignedByte, Short, UnsignedShort, Int, …, Double } |
Свойства
|
|
Публичные функции
| QAttribute(Qt3DCore::QBuffer *buf, const QString &name, Qt3DCore::QAttribute::VertexBaseType type, uint dataSize, uint count, uint offset = 0, uint stride = 0, Qt3DCore::QNode *parent = nullptr) | |
| QAttribute(Qt3DCore::QBuffer *buf, Qt3DCore::QAttribute::VertexBaseType type, uint dataSize, uint count, uint offset = 0, uint stride = 0, Qt3DCore::QNode *parent = nullptr) | |
| QAttribute(Qt3DCore::QNode *parent = nullptr) | |
| Qt3DCore::QAttribute::AttributeType | attributeType() const |
| Qt3DCore::QBuffer * | buffer() const |
| uint | byteOffset() const |
| uint | byteStride() const |
| uint | count() const |
| uint | divisor() const |
| QString | name() const |
| Qt3DCore::QAttribute::VertexBaseType | vertexBaseType() const |
| uint | vertexSize() const |
Публичные слоты
| void | setAttributeType(Qt3DCore::QAttribute::AttributeType attributeType) |
| void | setBuffer(Qt3DCore::QBuffer *buffer) |
| void | setByteOffset(uint byteOffset) |
| void | setByteStride(uint byteStride) |
| void | setCount(uint count) |
| void | setDivisor(uint divisor) |
| void | setName(const QString &name) |
| void | setVertexBaseType(Qt3DCore::QAttribute::VertexBaseType type) |
| void | setVertexSize(uint size) |
Сигналы
| void | attributeTypeChanged(Qt3DCore::QAttribute::AttributeType attributeType) |
| void | bufferChanged(Qt3DCore::QBuffer *buffer) |
| void | byteOffsetChanged(uint byteOffset) |
| void | byteStrideChanged(uint byteStride) |
| void | countChanged(uint count) |
| void | dataSizeChanged(uint vertexSize) |
| void | dataTypeChanged(Qt3DCore::QAttribute::VertexBaseType vertexBaseType) |
| void | divisorChanged(uint divisor) |
| void | nameChanged(const QString &name) |
| void | vertexBaseTypeChanged(Qt3DCore::QAttribute::VertexBaseType vertexBaseType) |
| void | vertexSizeChanged(uint vertexSize) |
Статические публичные члены
| QString | defaultColorAttributeName() |
| QString | defaultJointIndicesAttributeName() |
| QString | defaultJointWeightsAttributeName() |
| QString | defaultNormalAttributeName() |
| QString | defaultPositionAttributeName() |
| QString | defaultTangentAttributeName() |
| QString | defaultTextureCoordinate1AttributeName() |
| QString | defaultTextureCoordinate2AttributeName() |
| QString | defaultTextureCoordinateAttributeName() |
Связанные нечлены
| QBufferPtr |
Подробное описание
Существует 3 типа атрибутов.
- VertexAttribute: используется для определения данных, которые нужно считывать для каждой вершины
- IndexAttribute: используется для определения индексов вершин, когда нужно использовать вызовы отрисовки с индексами
- DrawIndirectAttribute: используется для указания буфера DrawIndirect, который нужно использовать при использовании вызовов отрисовки с косвенным указанием
Примечание: когда атрибут имеет тип DrawIndirectAttribute, релевантными являются только count, stride и offset.
При предоставлении собственных атрибутов может быть целесообразно присвоить атрибуту имя с помощью функций-помощников, таких как QAttribute::defaultPositionAttributeName(), так как это обеспечит совместимость вашей геометрии с функцией выбора и различными материалами, предоставляемыми модулем Qt3DExtras.
См. такжеQBuffer.
Документация по типам членов
перечисление QAttribute::AttributeType
Тип атрибута.
| Константа | Значение |
|---|---|
Qt3DCore::QAttribute::VertexAttribute |
0 |
Qt3DCore::QAttribute::IndexAttribute |
1 |
Qt3DCore::QAttribute::DrawIndirectAttribute |
2 |
перечисление QAttribute::VertexBaseType
Тип данных.
| Константа | Значение |
|---|---|
Qt3DCore::QAttribute::Byte |
0 |
Qt3DCore::QAttribute::UnsignedByte |
1 |
Qt3DCore::QAttribute::Short |
2 |
Qt3DCore::QAttribute::UnsignedShort |
3 |
Qt3DCore::QAttribute::Int |
4 |
Qt3DCore::QAttribute::UnsignedInt |
5 |
Qt3DCore::QAttribute::HalfFloat |
6 |
Qt3DCore::QAttribute::Float |
7 |
Qt3DCore::QAttribute::Double |
8 |
Документация свойств
attributeType : AttributeType
Содержит тип атрибута.
Функции доступа:
| Qt3DCore::QAttribute::AttributeType | attributeType() const |
| void | setAttributeType(Qt3DCore::QAttribute::AttributeType attributeType) |
Сигнал уведомления:
| void | attributeTypeChanged(Qt3DCore::QAttribute::AttributeType attributeType) |
buffer : Qt3DCore::QBuffer*
Содержит буфер.
Функции доступа:
| Qt3DCore::QBuffer * | buffer() const |
| void | setBuffer(Qt3DCore::QBuffer *buffer) |
Сигнал уведомления:
| void | bufferChanged(Qt3DCore::QBuffer *buffer) |
byteOffset : uint
Содержит смещение в байтах.
Функции доступа:
| uint | byteOffset() const |
| void | setByteOffset(uint byteOffset) |
Сигнал уведомления:
| void | byteOffsetChanged(uint byteOffset) |
byteStride : uint
Содержит шаг в байтах.
Функции доступа:
| uint | byteStride() const |
| void | setByteStride(uint byteStride) |
Сигнал уведомления:
| void | byteStrideChanged(uint byteStride) |
count : uint
Содержит количество.
Функции доступа:
| uint | count() const |
| void | setCount(uint count) |
Сигнал уведомления:
| void | countChanged(uint count) |
divisor : uint
Содержит делитель.
Функции доступа:
| uint | divisor() const |
| void | setDivisor(uint divisor) |
Сигнал уведомления:
| void | divisorChanged(uint divisor) |
name : QString
Содержит имя.
Функции доступа:
| QString | name() const |
| void | setName(const QString &name) |
Сигнал уведомления:
| void | nameChanged(const QString &name) |
vertexBaseType : VertexBaseType
Содержит тип данных.
Функции доступа:
| Qt3DCore::QAttribute::VertexBaseType | vertexBaseType() const |
| void | setVertexBaseType(Qt3DCore::QAttribute::VertexBaseType type) |
Сигнал уведомления:
| void | vertexBaseTypeChanged(Qt3DCore::QAttribute::VertexBaseType vertexBaseType) |
vertexSize : uint
Содержит размер данных, он может составлять от 1 до 4 единиц (скаляры и векторы), 9 единиц (3x3 матрицы) или 16 единиц (4x4 матрицы).
Функции доступа:
| uint | vertexSize() const |
| void | setVertexSize(uint size) |
Сигнал уведомления:
| void | vertexSizeChanged(uint vertexSize) |
Документация по функциям-членам
QAttribute::QAttribute(Qt3DCore::QBuffer *buf, const QString &name, Qt3DCore::QAttribute::VertexBaseType type, uint dataSize, uint count, uint offset = 0, uint stride = 0, Qt3DCore::QNode *parent = nullptr)
Создает новый QAttribute с именем name из buf типа type, размером dataSize, количеством count, смещением offset, шагом stride и родителем parent.
QAttribute::QAttribute(Qt3DCore::QBuffer *buf, Qt3DCore::QAttribute::VertexBaseType type, uint dataSize, uint count, uint offset = 0, uint stride = 0, Qt3DCore::QNode *parent = nullptr)
Создает новый QAttribute из buf типа type, размером dataSize, количеством count, смещением offset, шагом stride и родителем parent.
QAttribute::QAttribute(Qt3DCore::QNode *parent = nullptr)
Создает новый QAttribute с родителем parent.
[signal] void QAttribute::dataSizeChanged(uint vertexSize)
Сигнал испускается со значением vertexSize при изменении dataSize.
[signal] void QAttribute::dataTypeChanged(Qt3DCore::QAttribute::VertexBaseType vertexBaseType)
Сигнал испускается со значением vertexBaseType при изменении типа данных.
[static invokable] QString QAttribute::defaultColorAttributeName()
QAttribute::defaultColorAttributeName Возвращает имя атрибута по умолчанию для цвета.
Примечание: Эту функцию можно вызывать через систему метаобъектов и из QML. См. Q_INVOKABLE.
Примечание: Функция-получатель для свойства defaultColorAttributeName.
[static] QString QAttribute::defaultJointIndicesAttributeName()
QAttribute::defaultJointIndicesAttributeName Возвращает имя атрибута по умолчанию для индексов суставов.
Примечание: Функция-получатель для свойства defaultJointIndicesAttributeName.
[static] QString QAttribute::defaultJointWeightsAttributeName()
QAttribute::defaultJointIndicesAttributeName Возвращает имя атрибута по умолчанию для весов суставов
Примечание: Функция-геттер для свойства defaultJointWeightsAttributeName.
[static invokable] QString QAttribute::defaultNormalAttributeName()
QAttribute::defaultNormalAttributeName Возвращает имя атрибута нормали по умолчанию
Примечание: Эту функцию можно вызывать через систему метаобъектов и из QML. См. Q_INVOKABLE.
Примечание: Функция-геттер для свойства defaultNormalAttributeName.
[static invokable] QString QAttribute::defaultPositionAttributeName()
QAttribute::defaultPositionAttributeName Возвращает имя атрибута позиции по умолчанию
Примечание: Эту функцию можно вызывать через систему метаобъектов и из QML. См. Q_INVOKABLE.
Примечание: Функция-геттер для свойства defaultPositionAttributeName.
[static invokable] QString QAttribute::defaultTangentAttributeName()
QAttribute::defaultTangentAttributeName Возвращает имя атрибута касательной по умолчанию
Примечание: Эту функцию можно вызывать через систему метаобъектов и из QML. См. Q_INVOKABLE.
Примечание: Функция-геттер для свойства defaultTangentAttributeName.
[static] QString QAttribute::defaultTextureCoordinate1AttributeName()
QAttribute::defaultTextureCoordinate1AttributeName Возвращает имя атрибута по умолчанию для второго уровня текстурных координат
Примечание: Функция-геттер для свойства defaultTextureCoordinate1AttributeName.
[static] QString QAttribute::defaultTextureCoordinate2AttributeName()
QAttribute::defaultTextureCoordinate2AttributeName Возвращает имя атрибута по умолчанию для третьего уровня текстурных координат
Примечание: Функция-геттер для свойства defaultTextureCoordinate2AttributeName.
[static invokable] QString QAttribute::defaultTextureCoordinateAttributeName()
QAttribute::defaultTextureCoordinateAttributeName Возвращает имя атрибута текстурных координат по умолчанию
Примечание: Эту функцию можно вызывать через систему метаобъектов и из QML. См. Q_INVOKABLE.
Примечание: Функция-геттер для свойства defaultTextureCoordinateAttributeName.
Связанные нечленные функции
QBufferPtr
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qt3dcore-qattribute.html