Sur cette page

Qt3DRender::QGeometryRenderer Class

class Qt3DRender::QGeometryRenderer

Encapsule le rendu de la géométrie. Plus...

En-tête : #include <QGeometryRenderer>
CMake : find_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake : QT += 3drender
En QML : GeometryRenderer
Hérite : Qt3DCore::QBoundingVolume
Inherited By :

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

Status : Déclassé

Types publics

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

Propriétés

Fonctions publiques

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

Emplacements publics

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)

Signaux

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)

Description détaillée

Un Qt3DRender::QGeometryRenderer contient toutes les informations nécessaires pour dessiner un Qt3DCore::QGeometry. Une QGeometry contient les coordonnées des données géométriques - QGeometryRenderer spécifie comment interpréter ces données.

Membre Type Documentation

enum QGeometryRenderer::PrimitiveType

Le type de la primitive.

ConstanteValeurDescription de la primitive
Qt3DRender::QGeometryRenderer::Points0x0000Liste de points
Qt3DRender::QGeometryRenderer::Lines0x0001Liste de lignes
Qt3DRender::QGeometryRenderer::LineLoop0x0002Groupe de lignes connectées dont les extrémités forment une boucle
Qt3DRender::QGeometryRenderer::LineStrip0x0003Groupe de lignes connectées
Qt3DRender::QGeometryRenderer::Triangles0x0004Liste de triangles
Qt3DRender::QGeometryRenderer::TriangleStrip0x0005Liste de triangles connectés
Qt3DRender::QGeometryRenderer::TriangleFan0x0006Liste de triangles connectés dont tous les triangles partagent le premier sommet
Qt3DRender::QGeometryRenderer::LinesAdjacency0x000APermet au nuanceur géométrique d'accéder aux lignes adjacentes dans une liste de lignes
Qt3DRender::QGeometryRenderer::TrianglesAdjacency0x000CPermet au nuanceur géométrique d'accéder aux triangles adjacents dans une liste de triangles
Qt3DRender::QGeometryRenderer::LineStripAdjacency0x000BPermet au nuanceur géométrique d'accéder aux lignes adjacentes dans une bande de lignes
Qt3DRender::QGeometryRenderer::TriangleStripAdjacency0x000DPermet au nuanceur géométrique d'accéder aux triangles adjacents dans une bande de triangles
Qt3DRender::QGeometryRenderer::Patches0x000ESeul type primitif accepté par le shader de tesselation lorsqu'un patch est constitué d'un nombre arbitraire de sommets.

Documentation sur les propriétés

firstInstance : int

Contient l'instance de base.

Fonctions d'accès :

int firstInstance() const
void setFirstInstance(int firstInstance)

Signal de notification :

void firstInstanceChanged(int firstInstance)

firstVertex : int

Contient le sommet de base.

Fonctions d'accès :

int firstVertex() const
void setFirstVertex(int firstVertex)

Signal de notification :

void firstVertexChanged(int firstVertex)

geometry : Qt3DCore::QGeometry*

Contient la géométrie.

Fonctions d'accès :

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

Signal de notification :

void geometryChanged(Qt3DCore::QGeometry *geometry)

indexBufferByteOffset : int

Indique le décalage d'un octet dans le tampon d'index.

Fonctions d'accès :

int indexBufferByteOffset() const
void setIndexBufferByteOffset(int offset)

Signal de notification :

void indexBufferByteOffsetChanged(int offset)

indexOffset : int

Contient le sommet de base.

Fonctions d'accès :

int indexOffset() const
void setIndexOffset(int indexOffset)

Signal de notification :

void indexOffsetChanged(int indexOffset)

instanceCount : int

Contient le nombre d'instances.

Fonctions d'accès :

int instanceCount() const
void setInstanceCount(int instanceCount)

Signal de notification :

void instanceCountChanged(int instanceCount)

primitiveRestartEnabled : bool

Contient le drapeau de redémarrage primitif.

Fonctions d'accès :

bool primitiveRestartEnabled() const
void setPrimitiveRestartEnabled(bool enabled)

Signal de notification :

void primitiveRestartEnabledChanged(bool primitiveRestartEnabled)

primitiveType : PrimitiveType

Contient le type primitif.

Fonctions d'accès :

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

Signal du notificateur :

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

restartIndexValue : int

Contient l'indice de redémarrage.

Fonctions d'accès :

int restartIndexValue() const
void setRestartIndexValue(int index)

Signal de notification :

void restartIndexValueChanged(int restartIndexValue)

[since 6.0] sortIndex : float

Remplace l'indice de tri lorsque le tri par profondeur est activé.

Si le tri par profondeur est activé sur le graphique des images, le moteur de rendu triera les objets en fonction de la distance entre le centre du volume délimité et la caméra et rendra les objets du plus éloigné au plus proche.

Cette propriété peut être utilisée pour remplacer l'indice de profondeur et contrôler précisément l'ordre dans lequel les objets sont rendus. Ceci est utile lorsque tous les objets sont à la même distance physique de la caméra.

Les valeurs réelles ne sont pas significatives, mais elles définissent un ordre de tri des objets. Ceux-ci sont triés de manière à ce que l'objet ayant la plus petite valeur soit dessiné en premier, puis le deuxième plus petit, et ainsi de suite.

Remarque : La valeur -1.f désactive le tri explicite pour cette entité et revient à l'utilisation de la distance par rapport au centre du volume délimité.

Cette propriété a été introduite dans Qt 6.0.

Fonctions d'accès :

float sortIndex() const
void setSortIndex(float sortIndex)

Notifier signal :

void sortIndexChanged(float sortIndex)

Voir aussi Qt3DRender::QSortPolicy.

vertexCount : int

Contient le nombre de primitives.

Fonctions d'accès :

int vertexCount() const
void setVertexCount(int vertexCount)

Signal de notification :

void vertexCountChanged(int vertexCount)

verticesPerPatch : int

Contient les vertices par patch.

Fonctions d'accès :

int verticesPerPatch() const
void setVerticesPerPatch(int verticesPerPatch)

Signal du notificateur :

void verticesPerPatchChanged(int verticesPerPatch)

Fonction membre Documentation

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

Construit un nouveau QGeometryRenderer avec 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.