From 6bc21d1e3f159a989fa1a2d9f723afc2b9e6dd05 Mon Sep 17 00:00:00 2001 From: Hannes Matuschek Date: Sun, 30 Nov 2014 13:07:05 +0100 Subject: [PATCH 1/2] Fixed rotation of WaterfallView. --- src/gui/waterfallview.cc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/gui/waterfallview.cc b/src/gui/waterfallview.cc index 8913338..1eed551 100644 --- a/src/gui/waterfallview.cc +++ b/src/gui/waterfallview.cc @@ -114,7 +114,13 @@ WaterFallView::_onSpectrumUpdated() { // Draw new spectrum for (size_t i=0; i<_N; i++) { int idx = (_spectrum->fftSize()/2+i) % _spectrum->fftSize(); - double value = 10*log10(_spectrum->spectrum()[idx])-10*log10(_N); + double value; + if ((TOP_DOWN == _dir) || (RIGHT_LEFT == _dir)) { + value = 10*log10(_spectrum->spectrum()[_spectrum->fftSize()-1-idx])-10*log10(_N); + } else { + value = 10*log10(_spectrum->spectrum()[idx])-10*log10(_N); + } + // Reset NaNs if (value != value) { value = 0; } painter.setPen((*_colorMap)(value)); painter.drawPoint(i, _M-1); From 19f402df0e92bcbc815f0dafbd2c6db625117b56 Mon Sep 17 00:00:00 2001 From: Hannes Matuschek Date: Sun, 30 Nov 2014 21:49:50 +0100 Subject: [PATCH 2/2] Fixed WaterfallView. --- src/gui/waterfallview.cc | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/gui/waterfallview.cc b/src/gui/waterfallview.cc index 1eed551..35449f8 100644 --- a/src/gui/waterfallview.cc +++ b/src/gui/waterfallview.cc @@ -147,15 +147,19 @@ WaterFallView::mouseReleaseEvent(QMouseEvent *evt) { } void -WaterFallView::paintEvent(QPaintEvent *evt) { +WaterFallView::paintEvent(QPaintEvent *evt) +{ + QWidget::paintEvent(evt); + QPainter painter(this); + painter.save(); painter.setRenderHints(QPainter::SmoothPixmapTransform); // Draw transformed pixmap QTransform trafo; switch (_dir) { case BOTTOM_UP: - trafo *= trafo.scale(this->width()/qreal(_N), this->height()/qreal(_M)); + trafo.scale(this->width()/qreal(_N), this->height()/qreal(_M)); break; case LEFT_RIGHT: trafo.scale(this->width()/qreal(_M), this->height()/qreal(_N));