summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--examples/audiolevels/audiolevels.cpp9
-rw-r--r--examples/audiolevels/audiolevelsiodevice.cpp3
-rw-r--r--examples/audiolevels/main.cpp2
-rw-r--r--src/datavisualization/engine/bars3drenderer.cpp11
-rw-r--r--src/datavisualization/engine/q3dbars.cpp1
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;
}