Spec-Zone.ru › Qt

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

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

перечисление 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

Spec-Zone.ru

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