diff options
-rw-r--r-- | src/datavisualization/engine/surface3drenderer.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/datavisualization/engine/surface3drenderer.cpp b/src/datavisualization/engine/surface3drenderer.cpp index a212b9fd..4023c4ce 100644 --- a/src/datavisualization/engine/surface3drenderer.cpp +++ b/src/datavisualization/engine/surface3drenderer.cpp @@ -189,20 +189,24 @@ void Surface3DRenderer::updateDataModel(QSurfaceDataProxy *dataProxy) } // If data contains only one row, duplicate it to make surface - if (sampleSpace.height() == 1) - m_dataArray << m_dataArray.last(); + if (sampleSpace.height() == 1) { + QSurfaceDataRow *newRow = new QSurfaceDataRow(*m_dataArray.at(0)); + m_dataArray << newRow; + sampleSpace.setHeight(2); + } // If data contains only one column, duplicate the value to make surface if (sampleSpace.width() == 1) { for (int i = 0; i < sampleSpace.height(); i++) - (*m_dataArray.at(i)) << m_dataArray.at(i)->last(); + (*m_dataArray.at(i)) << m_dataArray.at(i)->at(0); + sampleSpace.setWidth(2); } if (m_dataArray.size() > 0) { if (!m_surfaceObj) loadSurfaceObj(); - QRect sampleSpace(0, 0, m_dataArray.at(0)->size(), m_dataArray.size()); + sampleSpace.moveTo(0, 0); bool dimensionChanged = false; if (m_sampleSpace != sampleSpace) { |