diff options
-rw-r--r-- | examples/audiolevels/audiolevels.cpp | 9 | ||||
-rw-r--r-- | examples/audiolevels/audiolevelsiodevice.cpp | 3 | ||||
-rw-r--r-- | examples/audiolevels/main.cpp | 2 | ||||
-rw-r--r-- | src/datavisualization/engine/bars3drenderer.cpp | 11 | ||||
-rw-r--r-- | src/datavisualization/engine/q3dbars.cpp | 1 |
5 files changed, 15 insertions, 11 deletions
diff --git a/examples/audiolevels/audiolevels.cpp b/examples/audiolevels/audiolevels.cpp index e1788936..d95536d2 100644 --- a/examples/audiolevels/audiolevels.cpp +++ b/examples/audiolevels/audiolevels.cpp @@ -38,11 +38,14 @@ AudioLevels::AudioLevels(Q3DBars *graph, QObject *parent) // Set up the graph m_graph->setBarThickness(0.5); m_graph->setBarSpacing(QSizeF(0.0, 1.0)); - m_graph->setGridVisible(false); + m_graph->setGridVisible(true); m_graph->setBackgroundVisible(false); - m_graph->valueAxis()->setRange(0.0, 2.0); + m_graph->valueAxis()->setRange(-100.0, 100.0); + m_graph->valueAxis()->setSegmentCount(20); + m_graph->valueAxis()->setLabelFormat(QStringLiteral("%d\%")); m_graph->setShadowQuality(QDataVis::ShadowQualityNone); - m_graph->scene()->activeCamera()->setCameraPosition(-20.0, 10.0, 20); + m_graph->setSelectionMode(QDataVis::SelectionModeNone); + m_graph->scene()->activeCamera()->setCameraPosition(-25.0, 10.0, 190.0); m_graph->setTheme(QDataVis::ThemeIsabelle); m_graph->setBarType(QDataVis::MeshStyleBars); diff --git a/examples/audiolevels/audiolevelsiodevice.cpp b/examples/audiolevels/audiolevelsiodevice.cpp index 11cba5aa..9fedd804 100644 --- a/examples/audiolevels/audiolevelsiodevice.cpp +++ b/examples/audiolevels/audiolevelsiodevice.cpp @@ -74,7 +74,8 @@ qint64 AudioLevelsIODevice::writeData(const char *data, qint64 maxSize) int index = 0; for (int i = newDataSize - 1; i >= newDataStartIndex; i--) { // Add 0.01 to the value to avoid gaps in the graph (i.e. zero height bars). - qreal value = qreal(quint8(data[resolution * i]) - 128) / 2.0 + 0.01; + // Also, scale to 0...100 + qreal value = qreal(quint8(data[resolution * i]) - 128) / 1.28 + 0.01; (*m_array->at(middleRow))[index].setValue(value); // Insert a fractional value into front half of the rows. for (int j = 1; j <= middleRow; j++) { diff --git a/examples/audiolevels/main.cpp b/examples/audiolevels/main.cpp index 9d16610c..524c53b1 100644 --- a/examples/audiolevels/main.cpp +++ b/examples/audiolevels/main.cpp @@ -28,7 +28,7 @@ int main(int argc, char *argv[]) QGuiApplication app(argc, argv); Q3DBars window; - window.resize(1024, 768); + window.resize(900, 1000); window.setTitle("Qt Data Visualization - Microphone audio levels visualizer"); window.show(); diff --git a/src/datavisualization/engine/bars3drenderer.cpp b/src/datavisualization/engine/bars3drenderer.cpp index d4cb23d6..c7c2f64c 100644 --- a/src/datavisualization/engine/bars3drenderer.cpp +++ b/src/datavisualization/engine/bars3drenderer.cpp @@ -84,7 +84,7 @@ Bars3DRenderer::Bars3DRenderer(Bars3DController *controller) m_scaleX(0), m_scaleZ(0), m_scaleFactor(0), - m_maxSceneSize(40.0), + m_maxSceneSize(40.0f), m_selection(selectionSkipColor), m_previousSelection(selectionSkipColor), m_hasHeightAdjustmentChanged(true) @@ -169,10 +169,11 @@ void Bars3DRenderer::updateDataModel(QBarDataProxy *dataProxy) m_sliceSelection->clear(); m_cachedColumnCount = newColumns; - m_cachedRowCount = newRows; - // TODO: Invent foolproof max scene size formula - // This seems to work ok if spacing is not negative (and row/column or column/row ratio is not too high) - m_maxSceneSize = 2 * qSqrt(newColumns * newRows); + m_cachedRowCount = newRows; + // Calculate max scene size + GLfloat sceneRatio = qMin(GLfloat(newColumns) / GLfloat(newRows), + GLfloat(newRows) / GLfloat(newColumns)); + m_maxSceneSize = 2.0f * qSqrt(sceneRatio * newColumns * newRows); // Calculate here and at setting bar specs calculateSceneScalingFactors(); } diff --git a/src/datavisualization/engine/q3dbars.cpp b/src/datavisualization/engine/q3dbars.cpp index ba4f03ae..bc2ffeba 100644 --- a/src/datavisualization/engine/q3dbars.cpp +++ b/src/datavisualization/engine/q3dbars.cpp @@ -608,7 +608,6 @@ Q3DBarsPrivate::Q3DBarsPrivate(Q3DBars *q, QRect rect) Q3DBarsPrivate::~Q3DBarsPrivate() { - qDebug() << "Destroying Q3DBarsPrivate"; delete m_shared; } |