Класс 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 { АтрибутВершины, АтрибутИндекса, АтрибутНепосредственногоРисования } |
| Перечисление | VertexBaseType { Байтовый, БеззнаковыйБайтовый, КороткоеЦелое, БеззнаковыйКороткий, Целое, …, ДвойноеТочность } |
Свойства
|
|
Открытые функции
| 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 | типАтрибута() const |
| Qt3DCore::QBuffer * | буфер() const |
| uint | смещениеВбайтах() const |
| uint | шагВбайтах() const |
| uint | количество() const |
| uint | делитель() const |
| QString | имя() const |
| Qt3DCore::QAttribute::VertexBaseType | базовыйТипВершины() const |
| uint | размерВершины() const |
Открытые слоты
| void | установитьТипАтрибута(Qt3DCore::QAttribute::AttributeType attributeType) |
| void | установитьБуфер(Qt3DCore::QBuffer *buffer) |
| void | установитьСмещениеВбайтах(uint byteOffset) |
| void | установитьШагВбайтах(uint byteStride) |
| void | установитьКоличество(uint count) |
| void | установитьДелитель(uint divisor) |
| void | установитьИмя(const QString &name) |
| void | установитьБазовыйТипВершины(Qt3DCore::QAttribute::VertexBaseType type) |
| void | установитьРазмерВершины(uint size) |
Сигналы
| void | изменилсяТипАтрибута(Qt3DCore::QAttribute::AttributeType attributeType) |
| void | изменилсяБуфер(Qt3DCore::QBuffer *buffer) |
| void | изменилосьСмещениеВбайтах(uint byteOffset) |
| void | изменилсяШагВбайтах(uint byteStride) |
| void | изменилосьКоличество(uint count) |
| void | изменилсяРазмерДанных(uint vertexSize) |
| void | изменилсяТипДанных(Qt3DCore::QAttribute::VertexBaseType vertexBaseType) |
| void | изменилсяДелитель(uint divisor) |
| void | изменилосьИмя(const QString &name) |
| void | изменилсяБазовыйТипВершины(Qt3DCore::QAttribute::VertexBaseType vertexBaseType) |
| void | изменилсяРазмерВершины(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.
Документация по типам членов
enum QAttribute::AttributeType
Тип атрибута.
| Константа | Значение |
|---|---|
Qt3DCore::QAttribute::VertexAttribute |
0 |
Qt3DCore::QAttribute::IndexAttribute |
1 |
Qt3DCore::QAttribute::DrawIndirectAttribute |
2 |
enum 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 при изменении размера данных.
[signal] void QAttribute::dataTypeChanged(Qt3DCore::QAttribute::VertexBaseType vertexBaseType)
Сигнал испускается со значением vertexBaseType при изменении типа данных.
[static] QString QAttribute::defaultColorAttributeName()
QAttribute::defaultColorAttributeName Возвращает имя атрибута цвета по умолчанию.
Примечание: Эту функцию можно вызвать через систему метаобъектов и из QML. См. Q_INVOKABLE.
Примечание: Функция-геттер для свойства defaultColorAttributeName.
[static] QString QAttribute::defaultJointIndicesAttributeName()
QAttribute::defaultJointIndicesAttributeName Возвращает имя атрибута индексов суставов по умолчанию.
Примечание: Функция-геттер для свойства defaultJointIndicesAttributeName.
[static] QString QAttribute::defaultJointWeightsAttributeName()
QAttribute::defaultJointIndicesAttributeName Возвращает имя атрибута по умолчанию для весов суставов
Примечание: Функция-геттер для свойства defaultJointWeightsAttributeName.
[static] QString QAttribute::defaultNormalAttributeName()
QAttribute::defaultNormalAttributeName Возвращает имя атрибута нормали по умолчанию
Примечание: Эту функцию можно вызывать через систему метаобъектов и из QML. См. Q_INVOKABLE.
Примечание: Функция-геттер для свойства defaultNormalAttributeName.
[static] QString QAttribute::defaultPositionAttributeName()
QAttribute::defaultPositionAttributeName Возвращает имя атрибута позиции по умолчанию
Примечание: Эту функцию можно вызывать через систему метаобъектов и из QML. См. Q_INVOKABLE.
Примечание: Функция-геттер для свойства defaultPositionAttributeName.
[static] QString QAttribute::defaultTangentAttributeName()
QAttribute::defaultTangentAttributeName Возвращает имя атрибута касательной по умолчанию
Примечание: Эту функцию можно вызывать через систему метаобъектов и из QML. См. Q_INVOKABLE.
Примечание: Функция-геттер для свойства defaultTangentAttributeName.
[static] QString QAttribute::defaultTextureCoordinate1AttributeName()
QAttribute::defaultTextureCoordinate1AttributeName Возвращает имя атрибута по умолчанию для второго уровня текстурных координат
Примечание: Функция-геттер для свойства defaultTextureCoordinate1AttributeName.
[static] QString QAttribute::defaultTextureCoordinate2AttributeName()
QAttribute::defaultTextureCoordinate2AttributeName Возвращает имя атрибута по умолчанию для третьего уровня текстурных координат
Примечание: Функция-геттер для свойства defaultTextureCoordinate2AttributeName.
[static] 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.0/qt3dcore-qattribute.html