summaryrefslogtreecommitdiffstats
path: root/examples/surfacechart
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@digia.com>2013-09-18 15:16:03 +0300
committerMiikka Heikkinen <miikka.heikkinen@digia.com>2013-09-19 07:43:16 +0300
commit8d84fc94b2cd5a0cc9eb83fd7708920ce785fa1b (patch)
treeb95e1ae87adbefb74350a8ed0d626aa823553960 /examples/surfacechart
parente746a954501e8b9eaee572414314a17ae2929573 (diff)
Implement limts related autoscaling for surface
Task-number: QTRD-2267 Change-Id: I406e1530585989a873885ac1ab8e4d2913080c22 Reviewed-by: Mika Salmela <mika.salmela@digia.com>
Diffstat (limited to 'examples/surfacechart')
-rw-r--r--examples/surfacechart/chartmodifier.cpp26
-rw-r--r--examples/surfacechart/main.cpp4
2 files changed, 8 insertions, 22 deletions
diff --git a/examples/surfacechart/chartmodifier.cpp b/examples/surfacechart/chartmodifier.cpp
index 94f97b5f..012ff68f 100644
--- a/examples/surfacechart/chartmodifier.cpp
+++ b/examples/surfacechart/chartmodifier.cpp
@@ -36,9 +36,6 @@ ChartModifier::ChartModifier(Q3DSurface *chart)
m_chart->setAxisX(new Q3DValueAxis);
m_chart->setAxisY(new Q3DValueAxis);
m_chart->setAxisZ(new Q3DValueAxis);
-
- QSurfaceDataProxy *proxy = new QSurfaceDataProxy;
- m_chart->setActiveDataProxy(proxy);
}
ChartModifier::~ChartModifier()
@@ -79,15 +76,12 @@ void ChartModifier::toggleSqrtSin(bool enable)
*dataArray << newRow;
}
- m_chart->axisX()->setRange(-8.0, 8.0);
m_chart->axisY()->setRange(0.0, 2.0);
- m_chart->axisZ()->setRange(-8.0, 8.0);
- m_chart->activeDataProxy()->resetArray(dataArray);
- m_chart->activeDataProxy()->setValueRangeColumns(-8.0, 8.0);
- m_chart->activeDataProxy()->setValueRangeRows(-8.0, 8.0);
m_chart->axisX()->setLabelFormat("%.2f");
m_chart->axisZ()->setLabelFormat("%.2f");
+ m_chart->activeDataProxy()->resetArray(dataArray, -8.0, 8.0, -8.0, 8.0);
+
m_activeSample = ChartModifier::SqrtSin;
} else {
qDebug() << "Remove surface";
@@ -100,7 +94,7 @@ void ChartModifier::togglePlane(bool enable)
if (enable) {
QSurfaceDataArray *dataArray = new QSurfaceDataArray;
- qreal y = 2.0 / qreal(m_zCount - 1);
+ qreal y = 2.0 / qreal(m_zCount);
dataArray->reserve(m_zCount);
for (int i = 0; i < m_zCount; i++) {
QSurfaceDataRow *newRow = new QSurfaceDataRow(m_xCount);
@@ -109,12 +103,8 @@ void ChartModifier::togglePlane(bool enable)
*dataArray << newRow;
}
+ m_chart->axisY()->setAutoAdjustRange(true);
m_chart->axisX()->setSegmentCount(4);
- m_chart->axisX()->setRange(0.0, 10.0);
- m_chart->axisY()->setRange(0.0, 2.0);
- m_chart->axisZ()->setRange(0.0, 10.0);
- m_chart->activeDataProxy()->setValueRangeColumns(0.0, 10.0);
- m_chart->activeDataProxy()->setValueRangeRows(0.0, 10.0);
m_chart->axisX()->setLabelFormat("%.2f");
m_chart->axisZ()->setLabelFormat("%.2f");
@@ -141,15 +131,11 @@ void ChartModifier::setHeightMapData(bool enable)
*dataArray << newRow;
}
- m_chart->activeDataProxy()->setValueRangeColumns(18.0, 24.0);
- m_chart->activeDataProxy()->setValueRangeRows(34.0, 40.0);
- m_chart->axisX()->setRange(18.0, 24.0);
- m_chart->axisY()->setRange(0.0, 255.0);
- m_chart->axisZ()->setRange(34.0, 40.0);
+ m_chart->axisY()->setAutoAdjustRange(true);
m_chart->axisX()->setLabelFormat("%.1f N");
m_chart->axisZ()->setLabelFormat("%.1f E");
- m_chart->activeDataProxy()->resetArray(dataArray);
+ m_chart->activeDataProxy()->resetArray(dataArray, 34.0, 40.0, 18.0, 24.0);
m_activeSample = ChartModifier::Map;
}
diff --git a/examples/surfacechart/main.cpp b/examples/surfacechart/main.cpp
index 02d5e7a0..d3497077 100644
--- a/examples/surfacechart/main.cpp
+++ b/examples/surfacechart/main.cpp
@@ -85,13 +85,13 @@ int main(int argc, char *argv[])
QSlider *gridSliderX = new QSlider(Qt::Horizontal, widget);
gridSliderX->setTickInterval(1);
- gridSliderX->setMinimum(1);
+ gridSliderX->setMinimum(2);
gridSliderX->setValue(10);
gridSliderX->setMaximum(200);
gridSliderX->setEnabled(true);
QSlider *gridSliderZ = new QSlider(Qt::Horizontal, widget);
gridSliderZ->setTickInterval(1);
- gridSliderZ->setMinimum(1);
+ gridSliderZ->setMinimum(2);
gridSliderZ->setValue(10);
gridSliderZ->setMaximum(200);
gridSliderZ->setEnabled(true);