Spec-Zone.ru › Qt 6.1

Класс 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 }

Свойства

  • attributeType : AttributeType
  • buffer : Qt3DCore::QBuffer*
  • byteOffset : uint
  • byteStride : uint
  • count : uint
  • divisor : uint
  • name : QString
  • vertexBaseType : VertexBaseType
  • vertexSize : uint

Публичные функции

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.

Документация по типам членов

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 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.1/qt3dcore-qattribute.html

Spec-Zone.ru

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