QSurface3DSeries Class
La classe QSurface3DSeries représente une série de données dans un graphique de surface en 3D. En savoir plus...
| En-tête : | #include <QSurface3DSeries> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Graphs) target_link_libraries(mytarget PRIVATE Qt6::Graphs) |
| qmake : | QT += graphs |
| En QML : | Surface3DSeries |
| Hérite de : | QAbstract3DSeries |
- Liste de tous les membres, y compris les membres hérités
- QSurface3DSeries fait partie des classes C++ d'Qt Graphs pour la 3D.
Types publics
| enum | DrawFlag { DrawWireframe, DrawSurface, DrawSurfaceAndWireframe, DrawFilledSurface } |
| flags | DrawFlags |
Propriétés
|
Fonctions publiques
| QSurface3DSeries(QObject *parent = nullptr) | |
| QSurface3DSeries(QSurfaceDataProxy *dataProxy, QObject *parent = nullptr) | |
| virtual | ~QSurface3DSeries() override |
| QValue3DAxis * | axisX() const |
| QValue3DAxis * | axisY() const |
| QValue3DAxis * | axisZ() const |
| void | clearArray() |
| void | clearRow(qsizetype rowIndex) |
| const QSurfaceDataArray & | dataArray() const & |
| QSurfaceDataArray | dataArray() && |
| QSurfaceDataProxy * | dataProxy() const |
| QSurface3DSeries::DrawFlags | drawMode() const |
| bool | isFlatShadingSupported() const |
| void | resetAxisX() |
| void | resetAxisY() |
| void | resetAxisZ() |
| bool | rowsSanitized() const |
| QPoint | selectedPoint() const |
| void | setAxisX(QValue3DAxis *axis) |
| void | setAxisY(QValue3DAxis *axis) |
| void | setAxisZ(QValue3DAxis *axis) |
| void | setDataArray(const QSurfaceDataArray &newDataArray) |
| void | setDataProxy(QSurfaceDataProxy *proxy) |
| void | setDrawMode(QSurface3DSeries::DrawFlags mode) |
| void | setRowsSanitized(bool sanitized) |
| void | setSelectedPoint(QPoint position) |
| void | setShading(const QSurface3DSeries::Shading shading) |
| void | setTexture(const QImage &texture) |
| void | setTextureFile(const QString &filename) |
| void | setWireframeColor(QColor color) |
| QSurface3DSeries::Shading | shading() const |
| QImage | texture() const |
| QString | textureFile() const |
| QColor | wireframeColor() const |
Signaux
| void | axisXChanged(QValue3DAxis *axis) |
| void | axisYChanged(QValue3DAxis *axis) |
| void | axisZChanged(QValue3DAxis *axis) |
| void | dataArrayChanged(const QSurfaceDataArray &array) |
| void | dataProxyChanged(QSurfaceDataProxy *proxy) |
| void | drawModeChanged(QSurface3DSeries::DrawFlags mode) |
| void | flatShadingSupportedChanged(bool enabled) |
| void | rowsSanitizedChanged(bool newRowsSanitized) |
| void | selectedPointChanged(QPoint position) |
| void | shadingChanged(const QSurface3DSeries::Shading shading) |
| void | textureChanged(const QImage &image) |
| void | textureFileChanged(const QString &filename) |
| void | wireframeColorChanged(QColor color) |
Membres publics statiques
| QPoint | invalidSelectionPosition() |
Description détaillée
Cette classe gère les éléments visuels spécifiques à la série, ainsi que les données de la série (via un proxy de données).
En ce qui concerne la relation entre le proxy et la série, il est essentiel de souligner quelques points clés. Dans ce contexte, les données sont stockées dans des séries et les utilisateurs peuvent accéder à l'ensemble de données via ces séries. Ces séries sont contrôlées ou représentées par un objet proxy. Ainsi, le proxy peut être utilisé pour gérer diverses opérations sur les données et mettre à jour l'ensemble de données réel. Cependant, il est nécessaire de créer une série associée à ce proxy pour modifier l'ensemble de données.
Si aucun proxy de données n’est explicitement défini pour la série, celle-ci crée un proxy par défaut. La définition d’un autre proxy détruira le proxy existant ainsi que toutes les données ajoutées à la série.
Le maillage d’objet défini via la propriété QAbstract3DSeries::mesh définit la forme du pointeur de sélection dans une série de surface.
QSurface3DSeries prend en charge les balises de format suivantes pour QAbstract3DSeries::setItemLabelFormat():
| @xTitle | Titre de l'axe x |
| @yTitle | Titre de l'axe y |
| @zTitle | Titre de l'axe z |
| @xLabel | Valeur de l'élément mise en forme selon le format de l'axe x. Pour plus d'informations, consultez QValue3DAxis::labelFormat. |
| @yLabel | Valeur de l'élément mise en forme selon le format de l'axe y. Pour plus d'informations, consultez QValue3DAxis::labelFormat. |
| @zLabel | Valeur de l'élément mise en forme selon le format de l'axe z. Pour plus d'informations, consultez QValue3DAxis::labelFormat. |
| @seriesName | Nom de la série |
Par exemple :
proxy->setItemLabelFormat(QStringLiteral("@valueTitle for (@rowLabel, @colLabel): %.1f"));Voir également Qt Graphs Traitement des données en 3D.
Documentation sur les types de membres
enum QSurface3DSeries::DrawFlag
flags QSurface3DSeries::DrawFlags
Le mode d'affichage de la surface. Les valeurs de cette énumération peuvent être combinées à l'aide de l'opérateur OU.
| Constante | Valeur | Description |
|---|---|---|
QSurface3DSeries::DrawWireframe | 0x1 | Seule la grille est dessinée. |
QSurface3DSeries::DrawSurface | 0x2 | Seule la surface est dessinée. |
QSurface3DSeries::DrawSurfaceAndWireframe | DrawWireframe | DrawSurface | La surface et la grille sont toutes deux dessinées. |
QSurface3DSeries::DrawFilledSurface (since Qt 6.10) | 0x4 | Dessine un remplissage pour une surface. L'activation de ce mode active également DrawSurface si celui-ci n'est pas déjà activé. |
Le type DrawFlags est un typedef pour QFlags<DrawFlag>. Il stocke une combinaison OR de valeurs DrawFlag.
Documentation des propriétés
[since 6.11] axisX : QValue3DAxis*
Prend en charge un axe X supplémentaire pour la série. Si un axe est spécifié, la série sera ajustée aux valeurs minimale et maximale de cet axe.
Cette énumération a été introduite dans Qt 6.11.
Fonctions d'accès :
| QValue3DAxis * | axisX() const |
| void | setAxisX(QValue3DAxis *axis) |
| void | resetAxisX() |
Signal de notification :
| void | axisXChanged(QValue3DAxis *axis) |
[since 6.11] axisY : QValue3DAxis*
Définit un axe Y supplémentaire pour la série. Si un axe est spécifié, la série sera ajustée aux valeurs minimale et maximale de cet axe.
Cette énumération a été introduite dans Qt 6.11.
Fonctions d'accès :
| QValue3DAxis * | axisY() const |
| void | setAxisY(QValue3DAxis *axis) |
| void | resetAxisY() |
Signal de notification :
| void | axisYChanged(QValue3DAxis *axis) |
[since 6.11] axisZ : QValue3DAxis*
Prend en charge un axe Z supplémentaire pour la série. Si un axe est spécifié, la série sera ajustée aux valeurs minimale et maximale de cet axe.
Cette énumération a été introduite dans Qt 6.11.
Fonctions d'accès :
| QValue3DAxis * | axisZ() const |
| void | setAxisZ(QValue3DAxis *axis) |
| void | resetAxisZ() |
Signal de notification :
| void | axisZChanged(QValue3DAxis *axis) |
dataArray : QSurfaceDataArray
Tableau de données pour la série.
Contient la référence du tableau de données.
Le signal `dataArrayChanged` est émis lorsque le tableau de données est défini, sauf si ` newDataArray ` est identique au précédent.
Remarque : avant toute opération sur dataArray, une série doit être créée pour le proxy concerné.
Fonctions d'accès :
| const QSurfaceDataArray & | dataArray() const & |
| QSurfaceDataArray | dataArray() && |
| void | setDataArray(const QSurfaceDataArray &newDataArray) |
Signal de notification :
| void | dataArrayChanged(const QSurfaceDataArray &array) |
Voir également ` clearRow(qsizetype rowIndex)` et ` clearArray()`.
dataProxy : QSurfaceDataProxy*
Cette propriété contient le proxy de données actif.
La série prend possession de tout proxy qui lui est attribué et supprime tout proxy précédemment défini lorsqu'un nouveau proxy est ajouté. Le proxy ne peut pas être nul ni attribué à une autre série.
Fonctions d'accès :
| QSurfaceDataProxy * | dataProxy() const |
| void | setDataProxy(QSurfaceDataProxy *proxy) |
Signal de notification :
| void | dataProxyChanged(QSurfaceDataProxy *proxy) |
drawMode : QSurface3DSeries::DrawFlags
Le mode de dessin.
Les valeurs possibles sont celles de DrawFlag. Il n'est pas permis de désactiver tous les indicateurs.
Fonctions d'accès :
| QSurface3DSeries::DrawFlags | drawMode() const |
| void | setDrawMode(QSurface3DSeries::DrawFlags mode) |
Signal de notification :
| void | drawModeChanged(QSurface3DSeries::DrawFlags mode) |
[read-only] flatShadingSupported : bool
Cette propriété indique si le système actuel prend en charge l'ombrage plat des surfaces.
L'ombrage plat des surfaces nécessite au moins la version 1.2 de GLSL avec l'extension GL_EXT_gpu_shader4. Si la valeur est « true », l'ombrage plat des surfaces est pris en charge.
Remarque : cette propriété en lecture seule prend sa valeur correcte après le premier passage de rendu. Jusqu’à ce moment-là, elle est toujours définie sur « true ».
Fonctions d'accès :
| bool | isFlatShadingSupported() const |
Signal de notification :
| void | flatShadingSupportedChanged(bool enabled) |
rowsSanitized : bool
Cette propriété détermine s'il faut procéder à l'assainissement des lignes.
Lorsque la valeur de « sanitized » est « true », les lignes de la série qui ne contiennent pas de données valides sont supprimées.
Remarque : cela peut entraîner une légère perte de performances.
Fonctions d'accès :
| bool | rowsSanitized() const |
| void | setRowsSanitized(bool sanitized) |
Signal de notification :
| void | rowsSanitizedChanged(bool newRowsSanitized) |
selectedPoint : QPoint
Cette propriété contient le point de la grille de surface sélectionné dans la série.
Sélectionne un point de maillage de surface situé à la position position dans le tableau de données de la série spécifiée par une ligne et une colonne.
Un seul point peut être sélectionné à la fois.
Pour effacer la sélection de cette série, la fonction ` invalidSelectionPosition()` est définie sur ` position`. Si cette série est ajoutée à un graphique, celui-ci peut ajuster la sélection en fonction des interactions de l'utilisateur ou si celle-ci devient invalide.
La suppression ou l’insertion de lignes dans la série avant la ligne du point sélectionné ajustera la sélection de manière à ce que ce même point reste sélectionné.
Fonctions d'accès :
| QPoint | selectedPoint() const |
| void | setSelectedPoint(QPoint position) |
Signal de notification :
| void | selectedPointChanged(QPoint position) |
Voir également Q3DGraphsWidgetItem::clearSelection().
shading : QSurface3DSeries::Shading
Cette propriété indique si l'ombrage plat des surfaces est activé.
La valeur par défaut est « QSurface3DSeries::Shading::Flat ».
Lorsqu’elle est désactivée, les normales de la surface sont interpolées, ce qui donne un aspect arrondi aux arêtes. Lorsqu’elle est activée, les normales restent identiques sur un triangle, ce qui rend la couleur du triangle uniforme. Cela rend les données du modèle plus lisibles.
Remarque : les surfaces à ombrageplat nécessitent au moins la version 1.2 de GLSL avec l’extension GL_EXT_gpu_shader4. La valeur de la propriété « flatShadingSupported » indique si l’ombrage plat est pris en charge lors de l’exécution.
Fonctions d’accès :
| QSurface3DSeries::Shading | shading() const |
| void | setShading(const QSurface3DSeries::Shading shading) |
Signal de notification :
| void | shadingChanged(const QSurface3DSeries::Shading shading) |
texture : QImage
Cette propriété stocke la texture de la surface sous la forme d'un objet de type ` QImage`.
Définir une valeur vide pour « QImage » efface la texture.
Fonctions d'accès :
| QImage | texture() const |
| void | setTexture(const QImage &texture) |
Signal de notification :
| void | textureChanged(const QImage &image) |
textureFile : QString
Cette propriété stocke la texture de la surface sous forme de fichier.
Si vous indiquez un nom de fichier vide, la texture est effacée.
Fonctions d'accès :
| QString | textureFile() const |
| void | setTextureFile(const QString &filename) |
Signal de notification :
| void | textureFileChanged(const QString &filename) |
wireframeColor : QColor
Cette propriété définit la couleur du filaire de la surface.
Fonctions d'accès :
| QColor | wireframeColor() const |
| void | setWireframeColor(QColor color) |
Signal de notification :
| void | wireframeColorChanged(QColor color) |
Documentation des fonctions membres
[explicit] QSurface3DSeries::QSurface3DSeries(QObject *parent = nullptr)
Crée une série de surfaces 3D à partir de l'élément parent « parent ».
[explicit] QSurface3DSeries::QSurface3DSeries(QSurfaceDataProxy *dataProxy, QObject *parent = nullptr)
Crée une série de surfaces 3D à partir du proxy de données dataProxy et de la série parente parent.
[override virtual noexcept] QSurface3DSeries::~QSurface3DSeries()
Supprime la série de surfaces 3D.
void QSurface3DSeries::clearArray()
Efface le tableau existant.
void QSurface3DSeries::clearRow(qsizetype rowIndex)
Efface la ligne existante du tableau selon l'rowIndex ion fournie.
[static] QPoint QSurface3DSeries::invalidSelectionPosition()
Renvoie l'QPoint, qui indique une position de sélection non valide. Cette valeur est attribuée à la propriété selectedPoint afin d'effacer la sélection de cette série.
Voir également Q3DGraphsWidgetItem::clearSelection().
© 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.