QAttribute Class

class Qt3DCore::QAttribute

Definiert ein Attribut und die Art und Weise, wie Daten aus einem QBuffer gelesen werden sollen. Mehr...

Kopfzeile: #include <Qt3DCore/QAttribute>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3DCore)
target_link_libraries(mytarget PRIVATE Qt6::3DCore)
qmake: QT += 3dcore
In QML: Attribute
Vererbt: Qt3DCore::QNode
Status: Veraltet

Öffentliche Typen

enum AttributeType { VertexAttribute, IndexAttribute, DrawIndirectAttribute }
enum VertexBaseType { Byte, UnsignedByte, Short, UnsignedShort, Int, …, Double }

Eigenschaften

Öffentliche Funktionen

QAttribute(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::QBuffer *buf, const QString &name, Qt3DCore::QAttribute::VertexBaseType type, uint dataSize, uint count, uint offset = 0, uint stride = 0, 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

Öffentliche Slots

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)

Signale

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)

Statische öffentliche Mitglieder

Detaillierte Beschreibung

Es gibt 3 Arten von Attributen.

  • VertexAttributeVertex-Attribute: werden verwendet, um Daten zu definieren, die pro Vertex gelesen werden
  • IndexAttributeDrawIndirect: wird verwendet, um Vertex-Indizes zu definieren, wenn indizierte Zeichenaufrufe verwendet werden sollen
  • DrawIndirectAttributeDrawIndirect: wird verwendet, um den DrawIndirect-Puffer zu spezifizieren, der verwendet wird, wenn indirekte Zeichenaufrufe verwendet werden sollen

Hinweis: Wenn ein Attribut vom Typ DrawIndirectAttribute ist, sind nur count, stride und offset relevant.

Wenn Sie Ihre eigenen Attribute bereitstellen, kann es sinnvoll sein, Ihr Attribut mit Helfern wie QAttribute::defaultPositionAttributeName() zu benennen, da dies sicherstellt, dass Ihre Geometrie mit dem Picking und den verschiedenen Materialien, die im Qt3DExtras Modul bereitgestellt werden, kompatibel ist.

Siehe auch QBuffer.

Dokumentation der Membertypen

enum QAttribute::AttributeType

Der Typ des Attributs.

KonstanteWert
Qt3DCore::QAttribute::VertexAttribute0
Qt3DCore::QAttribute::IndexAttribute1
Qt3DCore::QAttribute::DrawIndirectAttribute2

enum QAttribute::VertexBaseType

Der Typ der Daten.

KonstanteWert
Qt3DCore::QAttribute::Byte0
Qt3DCore::QAttribute::UnsignedByte1
Qt3DCore::QAttribute::Short2
Qt3DCore::QAttribute::UnsignedShort3
Qt3DCore::QAttribute::Int4
Qt3DCore::QAttribute::UnsignedInt5
Qt3DCore::QAttribute::HalfFloat6
Qt3DCore::QAttribute::Float7
Qt3DCore::QAttribute::Double8

Eigenschaft Dokumentation

attributeType : AttributeType

Enthält den Attributtyp.

Zugriffsfunktionen:

Qt3DCore::QAttribute::AttributeType attributeType() const
void setAttributeType(Qt3DCore::QAttribute::AttributeType attributeType)

Anmelder-Signal:

void attributeTypeChanged(Qt3DCore::QAttribute::AttributeType attributeType)

buffer : Qt3DCore::QBuffer*

Enthält den Puffer.

Zugriffsfunktionen:

Qt3DCore::QBuffer *buffer() const
void setBuffer(Qt3DCore::QBuffer *buffer)

Melder-Signal:

void bufferChanged(Qt3DCore::QBuffer *buffer)

byteOffset : uint

Enthält den Byte-Offset.

Zugriffsfunktionen:

uint byteOffset() const
void setByteOffset(uint byteOffset)

Melder-Signal:

void byteOffsetChanged(uint byteOffset)

byteStride : uint

Enthält den Byte-Stride.

Zugriffsfunktionen:

uint byteStride() const
void setByteStride(uint byteStride)

Anmelder-Signal:

void byteStrideChanged(uint byteStride)

count : uint

Hält den Zählerstand.

Zugriffsfunktionen:

uint count() const
void setCount(uint count)

Melder-Signal:

void countChanged(uint count)

divisor : uint

Enthält den Divisor.

Zugriffsfunktionen:

uint divisor() const
void setDivisor(uint divisor)

Melder-Signal:

void divisorChanged(uint divisor)

name : QString

Enthält den Namen.

Zugriffsfunktionen:

QString name() const
void setName(const QString &name)

Melder-Signal:

void nameChanged(const QString &name)

vertexBaseType : VertexBaseType

Enthält den Datentyp.

Zugriffsfunktionen:

Qt3DCore::QAttribute::VertexBaseType vertexBaseType() const
void setVertexBaseType(Qt3DCore::QAttribute::VertexBaseType type)

Anmelder-Signal:

void vertexBaseTypeChanged(Qt3DCore::QAttribute::VertexBaseType vertexBaseType)

vertexSize : uint

Enthält die Datengröße, sie kann nur 1 bis 4 Einheiten (Skalare und Vektoren), 9 Einheiten (3x3-Matrizen) oder 16 Einheiten (4x4-Matrizen) betragen.

Zugriffsfunktionen:

uint vertexSize() const
void setVertexSize(uint size)

Benachrichtigungssignal:

void vertexSizeChanged(uint vertexSize)

Member Function Dokumentation

[explicit] QAttribute::QAttribute(Qt3DCore::QNode *parent = nullptr)

Konstruiert ein neues QAttribut mit parent.

[explicit] QAttribute::QAttribute(Qt3DCore::QBuffer *buf, Qt3DCore::QAttribute::VertexBaseType type, uint dataSize, uint count, uint offset = 0, uint stride = 0, Qt3DCore::QNode *parent = nullptr)

Konstruiert ein neues QAttribut aus buf von type, dataSize, count, offset, und stride mit parent.

[explicit] 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)

Konstruiert ein neues QAttribut namens name aus buf, type, dataSize, count, offset und stride mit parent.

[signal] void QAttribute::dataSizeChanged(uint vertexSize)

Das Signal wird mit vertexSize ausgegeben, wenn sich die dataSize ändert.

[signal] void QAttribute::dataTypeChanged(Qt3DCore::QAttribute::VertexBaseType vertexBaseType)

Das Signal wird mit vertexBaseType ausgegeben, wenn sich der dataType geändert hat.

[static invokable] QString QAttribute::defaultColorAttributeName()

QAttribute::defaultColorAttributeName Gibt den Namen des Standard-Farbattributs zurück

Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.

Hinweis: Getter-Funktion für die Eigenschaft defaultColorAttributeName.

[static] QString QAttribute::defaultJointIndicesAttributeName()

QAttribute::defaultJointIndicesAttributeName Gibt den Namen des Standardattributs für Gelenkindizes zurück

Hinweis: Getter-Funktion für die Eigenschaft defaultJointIndicesAttributeName.

[static] QString QAttribute::defaultJointWeightsAttributeName()

QAttribute::defaultJointIndicesAttributeName Gibt den Namen des Standardattributs für Gelenkgewichte zurück.

Hinweis: Getter-Funktion für die Eigenschaft defaultJointWeightsAttributeName.

[static invokable] QString QAttribute::defaultNormalAttributeName()

QAttribute::defaultNormalAttributeName Gibt den Namen des normalen Standardattributs zurück

Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.

Hinweis: Getter-Funktion für die Eigenschaft defaultNormalAttributeName.

[static invokable] QString QAttribute::defaultPositionAttributeName()

QAttribute::defaultPositionAttributeName Gibt den Namen des Standard-Positionsattributs zurück

Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.

Hinweis: Getter-Funktion für die Eigenschaft defaultPositionAttributeName.

[static invokable] QString QAttribute::defaultTangentAttributeName()

QAttribute::defaultTangentAttributeName Gibt den Namen des Standard-Tangenten-Attributs zurück

Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.

Hinweis: Getter-Funktion für die Eigenschaft defaultTangentAttributeName.

[static] QString QAttribute::defaultTextureCoordinate1AttributeName()

QAttribute::defaultTextureCoordinate1AttributeName Gibt den Namen des Standardattributs für die zweite Ebene der Texturkoordinaten zurück

Hinweis: Getter-Funktion für die Eigenschaft defaultTextureCoordinate1AttributeName.

[static] QString QAttribute::defaultTextureCoordinate2AttributeName()

QAttribute::defaultTextureCoordinate2AttributeName Gibt den Namen des Standardattributs für die dritte Ebene der Texturkoordinaten zurück

Hinweis: Getter-Funktion für die Eigenschaft defaultTextureCoordinate2AttributeName.

[static invokable] QString QAttribute::defaultTextureCoordinateAttributeName()

QAttribute::defaultTextureCoordinateAttributeName Gibt den Namen des Standard-Textur-Koordinatenattributs zurück

Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.

Hinweis: Getter-Funktion für die Eigenschaft defaultTextureCoordinateAttributeName.

Verwandte Nicht-Members

QBufferPtr

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.