QAttribute Class
(Qt3DRender::QAttribute)Defines an attribute and how data should be read from a QBuffer. More...
| Header: | #include <QAttribute> | 
| qmake: | QT += 3drender | 
| Instantiated By: | Attribute | 
| Inherits: | Qt3DCore::QNode | 
Public Types
| enum | AttributeType { VertexAttribute, IndexAttribute } | 
| enum | VertexBaseType { Byte, UnsignedByte, Short, UnsignedShort, ..., Double } | 
Properties
| 
 | 
 | 
- 2 properties inherited from Qt3DCore::QNode
- 1 property inherited from QObject
Public Functions
| 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 | 
- 6 public functions inherited from Qt3DCore::QNode
- 31 public functions inherited from QObject
Public Slots
| 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) | 
- 2 public slots inherited from Qt3DCore::QNode
- 1 public slot inherited from QObject
Signals
| 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) | 
- 3 signals inherited from Qt3DCore::QNode
- 2 signals inherited from QObject
Static Public Members
| QString | defaultColorAttributeName() | 
| QString | defaultNormalAttributeName() | 
| QString | defaultPositionAttributeName() | 
| QString | defaultTangentAttributeName() | 
| QString | defaultTextureCoordinateAttributeName() | 
- 10 static public members inherited from QObject
Related Non-Members
| typedef | QBufferPtr | 
Additional Inherited Members
- 1 public variable inherited from QObject
- 2 protected functions inherited from Qt3DCore::QNode
- 9 protected functions inherited from QObject
- 2 protected variables inherited from QObject
Detailed Description
Defines an attribute and how data should be read from a QBuffer.
When providing your own attributes, it may make sense to name your attribute using helpers such as QAttribute::defaultPositionAttributeName() as that will ensure your geometry will be compatible with picking and the various materials provided in the Qt3DExtras module.
See also QBuffer.
Member Type Documentation
enum QAttribute::AttributeType
The type of the attribute.
| Constant | Value | 
|---|---|
| Qt3DRender::QAttribute::VertexAttribute | 0 | 
| Qt3DRender::QAttribute::IndexAttribute | 1 | 
enum QAttribute::VertexBaseType
The type of the data.
| Constant | Value | 
|---|---|
| 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 | 
Property Documentation
attributeType : AttributeType
Holds the attribute type.
Access functions:
| AttributeType | attributeType() const | 
| void | setAttributeType(AttributeType attributeType) | 
Notifier signal:
| void | attributeTypeChanged(AttributeType attributeType) | 
buffer : Qt3DRender::QBuffer *
Holds the buffer.
Access functions:
| QBuffer * | buffer() const | 
| void | setBuffer(QBuffer *buffer) | 
Notifier signal:
| void | bufferChanged(QBuffer *buffer) | 
byteOffset : uint
Holds the byte offset.
Access functions:
| uint | byteOffset() const | 
| void | setByteOffset(uint byteOffset) | 
Notifier signal:
| void | byteOffsetChanged(uint byteOffset) | 
byteStride : uint
Holds the byte stride.
Access functions:
| uint | byteStride() const | 
| void | setByteStride(uint byteStride) | 
Notifier signal:
| void | byteStrideChanged(uint byteStride) | 
count : uint
Holds the count.
Access functions:
| uint | count() const | 
| void | setCount(uint count) | 
Notifier signal:
| void | countChanged(uint count) | 
defaultColorAttributeName : const QString
Access functions:
| QString | defaultColorAttributeName() | 
defaultNormalAttributeName : const QString
Access functions:
| QString | defaultNormalAttributeName() | 
defaultPositionAttributeName : const QString
Access functions:
| QString | defaultPositionAttributeName() | 
defaultTangentAttributeName : const QString
Access functions:
| QString | defaultTangentAttributeName() | 
defaultTextureCoordinateAttributeName : const QString
Access functions:
| QString | defaultTextureCoordinateAttributeName() | 
divisor : uint
Holds the divisor.
Access functions:
| uint | divisor() const | 
| void | setDivisor(uint divisor) | 
Notifier signal:
| void | divisorChanged(uint divisor) | 
name : QString
Holds the name.
Access functions:
| QString | name() const | 
| void | setName(const QString &name) | 
Notifier signal:
| void | nameChanged(const QString &name) | 
vertexBaseType : VertexBaseType
Holds the data type.
Access functions:
| VertexBaseType | vertexBaseType() const | 
| void | setVertexBaseType(VertexBaseType type) | 
Notifier signal:
| void | vertexBaseTypeChanged(VertexBaseType vertexBaseType) | 
vertexSize : uint
Holds the data size, it can only be 1 to 4 units (scalars and vectors), 9 units (3x3 matrices) or 16 units (4x4 matrices).
Access functions:
| uint | vertexSize() const | 
| void | setVertexSize(uint size) | 
Notifier signal:
| void | vertexSizeChanged(uint vertexSize) | 
Member Function Documentation
QAttribute::QAttribute(QNode *parent = nullptr)
Constructs a new QAttribute with parent.
QAttribute::QAttribute(QBuffer *buf, VertexBaseType type, uint dataSize, uint count, uint offset = 0, uint stride = 0, QNode *parent = nullptr)
Constructs a new QAttribute from buf of type, dataSize, count, offset, and stride with parent.
QAttribute::QAttribute(QBuffer *buf, const QString &name, VertexBaseType type, uint dataSize, uint count, uint offset = 0, uint stride = 0, QNode *parent = nullptr)
Constructs a new QAttribute named name from buf of type, dataSize, count, offset, and stride with parent.
[signal] void QAttribute::dataSizeChanged(uint vertexSize)
[signal] void QAttribute::dataTypeChanged(VertexBaseType vertexBaseType)
[static] QString QAttribute::defaultColorAttributeName()
QAttribute::defaultColorAttributeName Returns the name of the default color attribute
Note: Getter function for property defaultColorAttributeName.
[static] QString QAttribute::defaultNormalAttributeName()
QAttribute::defaultNormalAttributeName Returns the name of the default normal attribute
Note: Getter function for property defaultNormalAttributeName.
[static] QString QAttribute::defaultPositionAttributeName()
QAttribute::defaultPositionAttributeName Returns the name of the default position attribute
Note: Getter function for property defaultPositionAttributeName.
[static] QString QAttribute::defaultTangentAttributeName()
QAttribute::defaultTangentAttributeName Returns the name of the default tangent attribute
Note: Getter function for property defaultTangentAttributeName.
[static] QString QAttribute::defaultTextureCoordinateAttributeName()
QAttribute::defaultTextureCoordinateAttributeName Returns the name of the default texture coordinate attribute
Note: Getter function for property defaultTextureCoordinateAttributeName.
[slot] void QAttribute::setDataSize(uint size)
This function is deprecated.
[slot] void QAttribute::setDataType(VertexBaseType type)
This function is deprecated.