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