Sur cette page

Custom3DItem QML Type

Ajoute un élément personnalisé à un graphique. En savoir plus…

Import Statement: import QtGraphs
In C++: QCustom3DItem
Inherited By:

Custom3DLabel and Custom3DVolume

Propriétés

Signaux

Méthodes

Description détaillée

Un élément personnalisé dispose d'un maillage, d'une position, d'une échelle et d'une rotation personnalisés, ainsi que d'une texture facultative.

Documentation des propriétés

meshFile : string

Nom du fichier de maillage de l'élément. L'élément contenu dans le fichier doit être au format de maillage. Il est recommandé que les fichiers de maillage contiennent les sommets, les normales et les coordonnées UV.

position : vector3d

La position de l'élément est définie par la propriété ` vector3d`. La valeur par défaut est ` vector3d(0.0, 0.0, 0.0)`.

La position de l'élément est spécifiée soit en coordonnées de données, soit en coordonnées absolues, selon la valeur de la propriété positionAbsolute. Lorsque l'on utilise des coordonnées absolues, les valeurs comprises entre -1.0...1.0 se situent dans les plages des axes.

Remarque : les éléments positionnés en dehors de toute plage d’axe ne sont pas affichés si positionAbsolute est défini sur false, sauf si l’élément est un Custom3DVolume qui serait partiellement visible et si scalingAbsolute est également défini sur false. Dans ce cas, la partie visible du volume sera affichée.

Voir également positionAbsolute et scalingAbsolute.

positionAbsolute : bool

Détermine si la position des éléments doit être gérée en coordonnées de données ou en coordonnées absolues. La valeur par défaut est « false ». Les éléments avec des coordonnées absolues seront toujours affichés, tandis que ceux avec des coordonnées de données ne seront affichés que s’ils se trouvent dans les plages des axes.

Voir également position.

rotation : quaternion

La rotation des éléments est définie par l'quaternion. La valeur par défaut est quaternion(0.0, 0.0, 0.0, 0.0).

rotationAbsolute : bool [since 6.11]

Détermine si la rotation des éléments doit être gérée en fonction des valeurs de données ou en valeurs absolues. La valeur par défaut est « true ». Les éléments dont la rotation est définie en valeurs absolues seront pivotés selon les coordonnées par défaut, quel que soit l’axe. Les éléments dont la rotation est définie en fonction des données pivoteront selon les coordonnées de l’axe.

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

Voir également rotation.

scaling : vector3d

La mise à l'échelle de l'élément en tant que type « vector3d ». La valeur par défaut est « vector3d(0.1, 0.1, 0.1) ».

La mise à l'échelle des éléments est spécifiée soit en valeurs de données, soit en valeurs absolues, selon la valeur de la propriété « scalingAbsolute ». Le vecteur par défaut, interprété comme des valeurs absolues, définit l'élément à 10 % de la hauteur du graphique, à condition que la maillage de l'élément soit normalisé et que les proportions du graphique n'aient pas été modifiées par rapport aux valeurs par défaut.

Remarque : Seule la mise à l'échelle absolue est prise en charge pour les éléments « Custom3DLabel » ou pour les éléments personnalisés utilisés dans les graphiques « polar ».

Remarque : dans Qt 6.8, les modèles étaient incorrectement considérés comme mis à l'échelle à une taille de 1 (-0,5...0,5) par défaut, alors qu'ils sont en réalité mis à l'échelle à une taille de 2 (-1...1). De ce fait, tous les éléments personnalisés à partir de Qt 6.9 ont une taille deux fois supérieure à celle de Qt 6.8

Voir également scalingAbsolute.

scalingAbsolute : bool

Détermine si la mise à l'échelle des éléments doit être gérée en fonction des valeurs des données ou en valeurs absolues. La valeur par défaut est « true ». Les éléments dont la mise à l'échelle est absolue seront affichés à la même taille, quelles que soient les plages des axes. Les éléments dont la mise à l'échelle s'effectue en fonction des données verront leur taille apparente varier en fonction des plages des axes. Si positionAbsolute est défini sur true, cette propriété est ignorée et la mise à l'échelle est interprétée comme une valeur absolue. Si l'élément est en rotation, la mise à l'échelle en fonction des données est calculée sur l'élément non pivoté. De même, pour les éléments Custom3DVolume, le découpage de plage est calculé sur l'élément non pivoté.

Remarque : seul le mise à l'échelle absolue est prise en charge pour les éléments « Custom3DLabel » ou pour les éléments personnalisés utilisés dans les graphiques « polar ».

Remarque : le maillage de l’élément personnalisé doit être normalisé sur l’intervalle [-1 ,1], sinon la mise à l’échelle des données ne sera pas précise.

Voir également scaling et positionAbsolute.

shadowCasting : bool

Définit si le rendu des ombres pour l'élément est activé. La valeur par défaut est « true ». Si la valeur est « false », l'élément ne projette pas d'ombres, quelle que soit la valeur de « ShadowQuality ».

textureFile : string

Nom du fichier de texture de l'élément. Si ce paramètre n'est pas défini, une texture grise unie sera utilisée.

Remarque : afin d'économiser de la mémoire, l'QImage e chargée à partir du fichier est effacée une fois la texture créée.

visible : bool

La visibilité de l'élément. La valeur par défaut est « true ».

Documentation Signal

meshFileChanged(string meshFile)

Ce signal est émis lorsque meshFile devient meshFile.

Remarque : le gestionnaire correspondant est onMeshFileChanged.

positionAbsoluteChanged(bool positionAbsolute)

Ce signal est émis lorsque positionAbsolute devient positionAbsolute.

Remarque : le gestionnaire correspondant est onPositionAbsoluteChanged.

positionChanged(vector3d position)

Ce signal est émis lorsque l'élément position passe à position.

Remarque : le gestionnaire correspondant est onPositionChanged.

rotationChanged(quaternion rotation)

Ce signal est émis lorsque rotation devient rotation.

Remarque : le gestionnaire correspondant est onRotationChanged.

scalingAbsoluteChanged(bool scalingAbsolute)

Ce signal est émis lorsque scalingAbsolute devient scalingAbsolute.

Remarque : le gestionnaire correspondant est onScalingAbsoluteChanged.

scalingChanged(vector3d scaling)

Ce signal est émis lorsque scaling devient scaling.

Remarque : le gestionnaire correspondant est onScalingChanged.

shadowCastingChanged(bool shadowCasting)

Ce signal est émis lorsque shadowCasting devient shadowCasting.

Remarque : le gestionnaire correspondant est onShadowCastingChanged.

textureFileChanged(string textureFile)

Ce signal est émis lorsque textureFile devient textureFile.

Remarque : le gestionnaire correspondant est onTextureFileChanged.

visibleChanged(bool visible)

Ce signal est émis lorsque visible devient visible.

Remarque : le gestionnaire correspondant est onVisibleChanged.

Documentation de la méthode

void setRotationAxisAndAngle(vector3d axis, real angle)

Une fonction pratique permettant de construire le quaternion de rotation à partir de axis et angle.

Voir également rotation.

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