Sur cette page

Qt Graphs Intégration avec Qt Quick 3D

Comme Qt Graphs for 3D est basé sur Qt Quick 3D, il est possible d'intégrer des scènes Qt Quick 3D dans les graphiques.

Environnement de la scène

Pour ajuster un environnement de scène Qt Quick 3D dans un graphique, définissez SceneEnvironment ou ExtendedSceneEnvironment dans la propriété environment du graphique comme suit :

environment: ExtendedSceneEnvironment {
    aoEnabled: true
    aoDither: true
    ditheringEnabled: true
    lightProbe: Texture {
        textureData: ProceduralSkyTextureData {
            groundBottomColor: "black"
            skyTopColor: "white"
        }
    }
    backgroundMode: SceneEnvironment.SkyBox
    lensFlareEnabled: true
    lensFlareGhostCount: 10
    lensFlareApplyStarburstTexture: true
    lensFlareBloomBias: 0.4
}

Fonctionnalités non prises en charge

La modification du mode d'anticrénelage ou de la couleur claire de la scène ne fonctionne pas, ce qui signifie que la définition d'une valeur pour SceneEnvironment.antialiasingMode et SceneEnvironment.clearColor n'a aucun effet. Toutefois, si backgroundMode n'est pas défini sur SceneEnvironment.Color, l'arrière-plan sera affecté par les paramètres.

Intégration de la scène

Pour intégrer une scène 3D Qt Quick dans un graphique, définissez la propriété importScene du graphique sur Node avec les paramètres suivants :

importScene: Node {
    Model {
        scale: Qt.vector3d(0.01, 0.01, 0.01)
        source: "#Sphere"
        x: 2.5
        z: 2
        y: 1
        castsReflections: false
        receivesReflections: true
        materials: [
            PrincipledMaterial {
                baseColor: "gold"
                metalness: 1.0
                roughness: 0.1
            }
        ]
        ReflectionProbe {
            boxSize: Qt.vector3d(6, 3, 5)
            boxOffset: Qt.vector3d(-1.5, -1, -1.5)
            parallaxCorrection: true
            quality: ReflectionProbe.High
        }
    }
    Model {
        scale: Qt.vector3d(0.01, 0.01, 0.01)
        source: "#Sphere"
        x: -2.5
        z: -2
        y: 1
        castsReflections: false
        receivesReflections: true
        materials: [
            PrincipledMaterial {
                baseColor: "white"
                metalness: 0.0
                roughness: 0.0
                transmissionFactor: 1.0
                thicknessFactor: 50
            }
        ]
    }
}

L'ajout de Nodes directement en tant qu'enfant du graphique ne fonctionnera pas, car l'enfant par défaut d'un graphique est la série correspondante.

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