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) |
void | setDataSize(uint size) |
void | setDataType(VertexBaseType type) |
void | setDivisor(uint divisor) |
void | setName(const QString &name) |
- 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) |
- 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 and ..
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) |
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 | setDataType(VertexBaseType type) |
Notifier signal:
void | dataTypeChanged(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 | setDataSize(uint size) |
Notifier signal:
void | dataSizeChanged(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.
[static]
QString QAttribute::defaultColorAttributeName()
QAttribute::defaultColorAttributeName Returns the name of the default color attribute
[static]
QString QAttribute::defaultNormalAttributeName()
QAttribute::defaultNormalAttributeName Returns the name of the default normal attribute
[static]
QString QAttribute::defaultPositionAttributeName()
QAttribute::defaultPositionAttributeName Returns the name of the default position attribute
[static]
QString QAttribute::defaultTangentAttributeName()
QAttribute::defaultTangentAttributeName Returns the name of the default tangent attribute
[static]
QString QAttribute::defaultTextureCoordinateAttributeName()
QAttribute::defaultTextureCoordinateAttributeName Returns the name of the default texture coordinate attribute