QSurface3DSeries Class
La classe QSurface3DSeries représente une série de données dans un graphique de surface 3D. Plus d'informations...
| 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éritages : | QAbstract3DSeries |
- Liste de tous les membres, y compris les membres hérités
- QSurface3DSeries fait partie de Qt Graphs C++ Classes for 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 proxy-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 par l'intermédiaire de la série. Cette série est contrôlée ou représentée 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 éditer le jeu de données.
Si aucun proxy de données n'est défini explicitement pour la série, la série crée un proxy par défaut. La définition d'un autre proxy détruira le proxy existant et toutes les données ajoutées à la série.
Le maillage de l'objet défini via la propriété QAbstract3DSeries::mesh définit la forme du pointeur de sélection dans une série de surfaces.
QSurface3DSeries prend en charge les balises de format suivantes pour QAbstract3DSeries::setItemLabelFormat() :
| @xTitle | Titre de l'axe des x |
| @yTitle | Titre de l'axe des y |
| @zTitle | Titre de l'axe des z |
| @xLabel | Valeur de l'élément formatée selon le format de l'axe des x. Pour plus d'informations, voir QValue3DAxis::labelFormat. |
| @yLabel | Valeur de l'élément formatée selon le format de l'axe des y. Pour plus d'informations, voir QValue3DAxis::labelFormat. |
| @zLabel | Valeur de l'élément formatée en utilisant le format de l'axe des z. Pour plus d'informations, voir QValue3DAxis::labelFormat. |
| @seriesName | Nom de la série |
Par exemple, le nom de la série :
proxy->setItemLabelFormat(QStringLiteral("@valueTitle for (@rowLabel, @colLabel): %.1f"));
Voir également Qt Graphs Data Handling with 3D.
Documentation sur les types de membres
enum QSurface3DSeries::DrawFlag
flags QSurface3DSeries::DrawFlags
Mode de dessin de la surface. Les valeurs de cette énumération peuvent être combinées avec l'opérateur OR.
| 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 s'il n'est pas déjà activé. |
Le type DrawFlags est un typedef pour QFlags<DrawFlag>. Il stocke une combinaison OU de valeurs DrawFlag.
Documentation sur les propriétés
[since 6.11] axisX : QValue3DAxis*
Détient un axe X supplémentaire pour la série Si un axe est donné, la série sera ajustée aux valeurs minimales et maximales de l'axe.
Cette propriété a été introduite dans Qt 6.11.
Fonctions d'accès :
| QValue3DAxis * | axisX() const |
| void | setAxisX(QValue3DAxis *axis) |
| void | resetAxisX() |
Notifier signal :
| void | axisXChanged(QValue3DAxis *axis) |
[since 6.11] axisY : QValue3DAxis*
Détient un axe Y supplémentaire pour la série Si un axe est donné, la série sera ajustée aux valeurs minimales et maximales de l'axe.
Cette propriété a été introduite dans Qt 6.11.
Fonctions d'accès :
| QValue3DAxis * | axisY() const |
| void | setAxisY(QValue3DAxis *axis) |
| void | resetAxisY() |
Notifier signal :
| void | axisYChanged(QValue3DAxis *axis) |
[since 6.11] axisZ : QValue3DAxis*
Détient un axe Z supplémentaire pour la série Si un axe est donné, la série sera ajustée aux valeurs minimales et maximales de l'axe.
Cette propriété a été introduite dans Qt 6.11.
Fonctions d'accès :
| QValue3DAxis * | axisZ() const |
| void | setAxisZ(QValue3DAxis *axis) |
| void | resetAxisZ() |
Notifier signal :
| 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 modifié, sauf si newDataArray est identique au précédent.
Remarque : avant de faire quoi que ce soit concernant le tableau de données, 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 Notifier :
| void | dataArrayChanged(const QSurfaceDataArray &array) |
Voir aussi clearRow(qsizetype rowIndex) et clearArray().
dataProxy : QSurfaceDataProxy*
Cette propriété contient le proxy de données actif.
La série assume la propriété de tout proxy qui lui est associé et supprime tout proxy précédemment défini lorsqu'un nouveau proxy est ajouté. Le proxy ne peut pas être nul ou associé à 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. L'effacement de tous les drapeaux n'est pas autorisé.
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 l'ombrage plat des surfaces est pris en charge par le système actuel.
L'ombrage plat des surfaces nécessite au moins la version 1.2 de GLSL avec l'extension GL_EXT_gpu_shader4. Si true, l'ombrage plat des surfaces est pris en charge.
Remarque : cette propriété en lecture seule prend sa valeur correcte après la première passe de rendu. Jusque-là, la valeur est toujours true.
Fonctions d'accès :
| bool | isFlatShadingSupported() const |
Notifier signal :
| void | flatShadingSupportedChanged(bool enabled) |
rowsSanitized : bool
Cette propriété indique s'il faut effectuer un nettoyage des lignes.
Lorsque sanitized vaut 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 pénalité en termes de performances.
Fonctions d'accès :
| bool | rowsSanitized() const |
| void | setRowsSanitized(bool sanitized) |
Notifier signal :
| void | rowsSanitizedChanged(bool newRowsSanitized) |
selectedPoint : QPoint
Cette propriété contient le point de grille de surface sélectionné dans la série.
Sélectionne un point de grille de surface à 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, invalidSelectionPosition() est défini comme position. Si cette série est ajoutée à un graphique, celui-ci peut ajuster la sélection en fonction de l'interaction de l'utilisateur ou si elle 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 le 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 aussi Q3DGraphsWidgetItem::clearSelection().
shading : QSurface3DSeries::Shading
Cette propriété indique si l'ombrage plat de la surface 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 aux bords un aspect arrondi. Lorsqu'elle est visible, les normales sont conservées à l'identique sur un triangle, ce qui rend la couleur du triangle solide. Cela rend les données plus lisibles à partir du modèle.
Remarque : les surfaces ombrées plates 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 au moment 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é contient la texture de la surface sous forme de QImage.
La définition d'un QImage vide 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é contient la texture de la surface sous forme de fichier.
La définition d'un nom de fichier vide efface la texture.
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 de l'image filaire de la surface.
Fonctions d'accès :
| QColor | wireframeColor() const |
| void | setWireframeColor(QColor color) |
Signal Notificateur :
| void | wireframeColorChanged(QColor color) |
Fonction membre Documentation
[explicit] QSurface3DSeries::QSurface3DSeries(QObject *parent = nullptr)
Construit une série 3D de surface avec le parent parent.
[explicit] QSurface3DSeries::QSurface3DSeries(QSurfaceDataProxy *dataProxy, QObject *parent = nullptr)
Construit une série 3D de surface avec le proxy de données dataProxy et le parent parent.
[override virtual noexcept] QSurface3DSeries::~QSurface3DSeries()
Supprime la série 3D de surface.
void QSurface3DSeries::clearArray()
Efface le tableau existant.
void QSurface3DSeries::clearRow(qsizetype rowIndex)
Efface la ligne existante dans le tableau en fonction de l'adresse rowIndex.
[static] QPoint QSurface3DSeries::invalidSelectionPosition()
Renvoie la valeur QPoint indiquant une position de sélection non valide. La propriété selectedPoint permet 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.