Auf dieser Seite

Qt3DRender::QGeometryRenderer Class

class Qt3DRender::QGeometryRenderer

Kapseln die Darstellung von Geometrie. Mehr...

Kopfzeile: #include <qgeometryrenderer.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
In QML: GeometryRenderer
Erbt von: Qt3DCore::QBoundingVolume
Vererbt an:

Qt3DExtras::QConeMesh, Qt3DExtras::QCuboidMesh, Qt3DExtras::QCylinderMesh, Qt3DExtras::QExtrudedTextMesh, Qt3DExtras::QPlaneMesh, Qt3DExtras::QSphereMesh, Qt3DExtras::QTorusMesh sowie Qt3DRender::QMesh

Status: Veraltet

Diese Klasse ist veraltet. Wir raten dringend davon ab, sie in neuem Code zu verwenden.

Öffentliche Typen

enum PrimitiveType { Points, Lines, LineLoop, LineStrip, Triangles, …, Patches }

Eigenschaften

Öffentliche Funktionen

QGeometryRenderer(Qt3DCore::QNode *parent = nullptr)
int firstInstance() const
int firstVertex() const
Qt3DCore::QGeometry *geometry() const
int indexBufferByteOffset() const
int indexOffset() const
int instanceCount() const
bool primitiveRestartEnabled() const
Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType() const
int restartIndexValue() const
float sortIndex() const
int vertexCount() const
int verticesPerPatch() const

Öffentliche Slots

void setFirstInstance(int firstInstance)
void setFirstVertex(int firstVertex)
void setGeometry(Qt3DCore::QGeometry *geometry)
void setIndexBufferByteOffset(int offset)
void setIndexOffset(int indexOffset)
void setInstanceCount(int instanceCount)
void setPrimitiveRestartEnabled(bool enabled)
void setPrimitiveType(Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType)
void setRestartIndexValue(int index)
void setSortIndex(float sortIndex)
void setVertexCount(int vertexCount)
void setVerticesPerPatch(int verticesPerPatch)

Signale

void firstInstanceChanged(int firstInstance)
void firstVertexChanged(int firstVertex)
void geometryChanged(Qt3DCore::QGeometry *geometry)
void indexBufferByteOffsetChanged(int offset)
void indexOffsetChanged(int indexOffset)
void instanceCountChanged(int instanceCount)
void primitiveRestartEnabledChanged(bool primitiveRestartEnabled)
void primitiveTypeChanged(Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType)
void restartIndexValueChanged(int restartIndexValue)
void sortIndexChanged(float sortIndex)
void vertexCountChanged(int vertexCount)
void verticesPerPatchChanged(int verticesPerPatch)

Ausführliche Beschreibung

Ein „ Qt3DRender::QGeometryRenderer “ enthält alle Informationen, die zum Zeichnen eines „ Qt3DCore::QGeometry “ erforderlich sind. Ein „QGeometry“ enthält die Koordinaten der Geometriedaten – „QGeometryRenderer“ legt fest, wie diese Daten zu interpretieren sind.

Dokumentation zu den Mitgliedstypen

enum QGeometryRenderer::PrimitiveType

Der Typ des Primitivs.

KonstanteWertBeschreibung
Qt3DRender::QGeometryRenderer::Points0x0000Liste von Punkten
Qt3DRender::QGeometryRenderer::Lines0x0001Liste von Geraden
Qt3DRender::QGeometryRenderer::LineLoop0x0002Zusammenhängende Gruppe von Linien, die an den Enden miteinander verbunden sind und eine Schleife bilden
Qt3DRender::QGeometryRenderer::LineStrip0x0003Zusammenhängende Gruppe von Linien
Qt3DRender::QGeometryRenderer::Triangles0x0004Liste der Dreiecke
Qt3DRender::QGeometryRenderer::TriangleStrip0x0005Liste der zusammenhängender Dreiecke
Qt3DRender::QGeometryRenderer::TriangleFan0x0006Liste verbundener Dreiecke, bei denen alle Dreiecke denselben ersten Eckpunkt haben
Qt3DRender::QGeometryRenderer::LinesAdjacency0x000AErmöglicht dem Geometrie-Shader den Zugriff auf benachbarte Linien in einer Linienliste
Qt3DRender::QGeometryRenderer::TrianglesAdjacency0x000CErmöglicht dem Geometrie-Shader den Zugriff auf benachbarte Dreiecke in einer Dreiecksliste
Qt3DRender::QGeometryRenderer::LineStripAdjacency0x000BErmöglicht dem Geometrie-Shader den Zugriff auf benachbarte Linien in einem Linienstreifen
Qt3DRender::QGeometryRenderer::TriangleStripAdjacency0x000DErmöglicht dem Geometrie-Shader den Zugriff auf benachbarte Dreiecke in einem Dreiecksstreifen
Qt3DRender::QGeometryRenderer::Patches0x000EEinziger vom Tesselations-Shader akzeptierter Primitivtyp, bei dem ein Patch aus einer beliebigen Anzahl von Eckpunkten besteht

Dokumentation der Eigenschaften

firstInstance : int

Enthält die Basisinstanz.

Zugriffsfunktionen:

int firstInstance() const
void setFirstInstance(int firstInstance)

Notifier-Signal:

void firstInstanceChanged(int firstInstance)

firstVertex : int

Enthält den Basiseckpunkt.

Zugriffsfunktionen:

int firstVertex() const
void setFirstVertex(int firstVertex)

Benachrichtigungssignal:

void firstVertexChanged(int firstVertex)

geometry : Qt3DCore::QGeometry*

Enthält die Geometrie.

Zugriffsfunktionen:

Qt3DCore::QGeometry *geometry() const
void setGeometry(Qt3DCore::QGeometry *geometry)

Benachrichtigungssignal:

void geometryChanged(Qt3DCore::QGeometry *geometry)

indexBufferByteOffset : int

Enthält den Byte-Offset im Indexpuffer.

Zugriffsfunktionen:

int indexBufferByteOffset() const
void setIndexBufferByteOffset(int offset)

Benachrichtigungssignal:

void indexBufferByteOffsetChanged(int offset)

indexOffset : int

Enthält den Basiseckpunkt.

Zugriffsfunktionen:

int indexOffset() const
void setIndexOffset(int indexOffset)

Benachrichtigungssignal:

void indexOffsetChanged(int indexOffset)

instanceCount : int

Enthält die Anzahl der Instanzen.

Zugriffsfunktionen:

int instanceCount() const
void setInstanceCount(int instanceCount)

Notifier-Signal:

void instanceCountChanged(int instanceCount)

primitiveRestartEnabled : bool

Enthält das Flag für den primitiven Neustart.

Zugriffsfunktionen:

bool primitiveRestartEnabled() const
void setPrimitiveRestartEnabled(bool enabled)

Notifier-Signal:

void primitiveRestartEnabledChanged(bool primitiveRestartEnabled)

primitiveType : PrimitiveType

Enthält den primitiven Typ.

Zugriffsfunktionen:

Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType() const
void setPrimitiveType(Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType)

Notifier-Signal:

void primitiveTypeChanged(Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType)

restartIndexValue : int

Enthält den Neustartindex.

Zugriffsfunktionen:

int restartIndexValue() const
void setRestartIndexValue(int index)

Benachrichtigungssignal:

void restartIndexValueChanged(int restartIndexValue)

[since 6.0] sortIndex : float

Überschreibt den Sortierindex, wenn die Tiefensortierung aktiviert ist.

Wenn die Tiefensortierung im Frame-Graph aktiviert ist, sortiert der Renderer Objekte danach, wie weit der Mittelpunkt des Begrenzungsvolumens von der Kamera entfernt ist, und rendert Objekte vom am weitesten entfernten zum nächstgelegenen.

Diese Eigenschaft kann verwendet werden, um den Tiefenindex zu überschreiben und die Reihenfolge, in der Objekte gerendert werden, präzise zu steuern. Dies ist nützlich, wenn sich alle Objekte in derselben physikalischen Entfernung zur Kamera befinden.

Die tatsächlichen Werte sind nicht von Bedeutung; wichtig ist lediglich, dass sie eine Reihenfolge für die Sortierung der Objekte festlegen. Die Objekte werden so sortiert, dass das Objekt mit dem kleinsten Wert zuerst gezeichnet wird, dann das mit dem zweitkleinsten Wert und so weiter.

Hinweis: Wenn dieser Wert auf -1.fgesetzt wird , wird die explizite Sortierung für diese Entität deaktiviert und es wird wieder der Abstand vom Mittelpunkt des Begrenzungsvolumens verwendet.

Diese Enumeration wurde in Qt 6.0 eingeführt.

Zugriffsfunktionen:

float sortIndex() const
void setSortIndex(float sortIndex)

Notifier-Signal:

void sortIndexChanged(float sortIndex)

Siehe auch „ Qt3DRender::QSortPolicy “.

vertexCount : int

Enthält die Anzahl der Primitive.

Zugriffsfunktionen:

int vertexCount() const
void setVertexCount(int vertexCount)

Notifier-Signal:

void vertexCountChanged(int vertexCount)

verticesPerPatch : int

Enthält Eckpunkte pro Patch.

Zugriffsfunktionen:

int verticesPerPatch() const
void setVerticesPerPatch(int verticesPerPatch)

Notifier-Signal:

void verticesPerPatchChanged(int verticesPerPatch)

Dokumentation der Mitgliedsfunktionen

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

Erstellt einen neuen `QGeometryRenderer` mit ` parent`.

© 2026 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.