Details
-
Bug
-
Resolution: Unresolved
-
P2: Important
-
None
-
6.8.0
-
None
-
-
715734e1f (dev), 97761510b (6.9), 4ad9c4b45 (6.8)
Description
- Same in datavis
ItemModelSurfaceDataProxy "columnRolePattern" and "columnRoleReplace" (as well as their row equivalents) do not work.
Minimal reproducible example:import QtQuick import QtGraphs Window { id: root width: 1280 height: 960 visible: true title: qsTr("Graphs 3D - Surface Graph") Surface3D { id: surfaceGraph anchors.fill: parent Surface3DSeries { id: surfaceSeries ItemModelSurfaceDataProxy { itemModel: dataModel rowRole: "xPos" columnRole: "timestamp" columnRolePattern: /(?:\d{2}.){2}(\d{4})/ // Match date, capture only year columnRoleReplace: "\\1" // Present the captured year yPosRole: "yPos" } } } ListModel { id: dataModel Component.onCompleted: { for (let i = 0; i <= 10; ++i) { for (let j = 2000; j <= 2015; ++j) { dataModel.append({"xPos": i, "yPos": i + j, "timestamp": "10.10." + j}) } } } } }
- Fix: Clear picked status of models when clearing selection
"clearSelection" method does not drop selection, it only nullifies the floating label contents, leaving empty border.
Minimal reproducible example:import QtQuick import QtQuick.Controls import QtGraphs Window { id: root width: 1280 height: 960 visible: true title: qsTr("Graphs 3D - Surface Graph") Surface3D { id: surfaceGraph anchors.fill: parent Surface3DSeries { id: surfaceSeries ItemModelSurfaceDataProxy { itemModel: dataModel columnRole: "xPos" yPosRole: "yPos" rowRole: "zPos" } } } ListModel { id: dataModel Component.onCompleted: { for (let i = -10; i < 10; ++i) { for (let j = -10; j < 10; ++j) { dataModel.append({"xPos": i, "yPos": i * j, "zPos": j}) } } } } Button { anchors { top: surfaceGraph.top horizontalCenter: parent.horizontalCenter } text: "Clear selection" onClicked: { surfaceGraph.clearSelection() } } }
- Fixed in Qt 6.8.1
Surface3DSeries "mesh" property does not influence the selection pointer shape.
Minimal reproducible example:import QtQuick import QtGraphs Window { id: root width: 1280 height: 960 visible: true title: qsTr("Graphs 3D - Surface Graph") Surface3D { id: surfaceGraph anchors.fill: parent Surface3DSeries { id: surfaceSeries mesh: Abstract3DSeries.Mesh.Pyramid ItemModelSurfaceDataProxy { itemModel: dataModel rowRole: "xPos" columnRole: "zPos" yPosRole: "yPos" } } } ListModel { id: dataModel Component.onCompleted: { for (let i = 0; i <= 10; ++i) { for (let j = 20; j <= 30; ++j) { dataModel.append({"xPos": i, "yPos": i + j, "zPos": j}) } } } } }
- "cameraTargetPosition" property does not work as described in the docs; values are not clamped, "x" coordinate 1.0 value does not translate to the edge of the X axis, "z" coordinate value does not translate to the edge of the Z axis but instead moves further from the graph as the value increases.
Minimal reproducible example:import QtQuick import QtGraphs Window { id: root width: 1280 height: 960 visible: true title: qsTr("Graphs 3D - Surface Graph") Surface3D { id: surfaceGraph anchors.fill: parent cameraTargetPosition: Qt.vector3d(1.0, 0, 5.0) Surface3DSeries { id: surfaceSeries ItemModelSurfaceDataProxy { itemModel: dataModel rowRole: "xPos" columnRole: "zPos" yPosRole: "yPos" } } } ListModel { id: dataModel Component.onCompleted: { for (let i = 0; i <= 10; ++i) { for (let j = 20; j <= 30; ++j) { dataModel.append({"xPos": i, "yPos": i + j, "zPos": j}) } } } } }
- This is a documented known issue (and there is a separate ticket for it)
** 3D surface graph does not seem to cast any shadow on the background despite "shadowStrength" property set to a significant value.
Minimal reproducible example:import QtQuick import QtGraphs Window { id: root width: 1280 height: 960 visible: true title: qsTr("Graphs 3D - Surface Graph") Surface3D { id: surfaceGraph anchors.fill: parent shadowStrength: 100 Surface3DSeries { id: surfaceSeries ItemModelSurfaceDataProxy { itemModel: dataModel rowRole: "xPos" columnRole: "zPos" yPosRole: "yPos" } } } ListModel { id: dataModel Component.onCompleted: { for (let i = 0; i <= 10; ++i) { for (let j = 20; j <= 30; ++j) { dataModel.append({"xPos": i, "yPos": i * j, "zPos": j}) } } } } }
- Using LogValue3DAxisFormatter for Y axis crashes the application.
Minimal reproducible example:import QtQuick import QtGraphs Window { id: root width: 1280 height: 960 visible: true title: qsTr("Graphs 3D - Surface Graph") Surface3D { id: surfaceGraph anchors.fill: parent axisY: Value3DAxis { formatter: LogValue3DAxisFormatter {} } Surface3DSeries { id: surfaceSeries ItemModelSurfaceDataProxy { itemModel: dataModel rowRole: "xPos" columnRole: "zPos" yPosRole: "yPos" } } } ListModel { id: dataModel Component.onCompleted: { for (let i = 0; i <= 10; ++i) { for (let j = 20; j <= 30; ++j) { dataModel.append({"xPos": i, "yPos": i * j, "zPos": j}) } } } } }
- Fixed in Qt 6.8.2
"labelAutoAngle" continuous label angle adjustment when rotating graph does not work - it changes the angle, however, when either the graph is rotated so that the graph background shifts.
Minimal reproducible example:import QtQuick import QtGraphs Window { id: root width: 1280 height: 960 visible: true title: qsTr("Graphs 3D - Surface Graph") Surface3D { id: surfaceGraph anchors.fill: parent axisX: Value3DAxis { labelAutoAngle: 90 } axisY: Value3DAxis { labelAutoAngle: 90 } axisZ: Value3DAxis { labelAutoAngle: 90 } Surface3DSeries { id: surfaceSeries ItemModelSurfaceDataProxy { itemModel: dataModel rowRole: "xPos" columnRole: "zPos" yPosRole: "yPos" } } } ListModel { id: dataModel Component.onCompleted: { for (let i = 0; i <= 10; ++i) { for (let j = 20; j <= 30; ++j) { dataModel.append({"xPos": i, "yPos": i * j, "zPos": j}) } } } } }
Attachments
Gerrit Reviews
For Gerrit Dashboard: QTBUG-132107 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
613238,2 | Add autotest for the row/column role replace | dev | qt/qtgraphs | Status: MERGED | +2 | 0 |
614693,2 | Add autotest for the row/column role replace | 6.9 | qt/qtgraphs | Status: MERGED | +2 | 0 |
614742,2 | Add autotest for the row/column role replace | 6.8 | qt/qtgraphs | Status: MERGED | +2 | 0 |