Ensures 1:1 ratio while displaying

This commit is contained in:
Gitea
2019-09-23 21:52:06 +02:00
parent 5dc2edf795
commit 1852570059

View File

@@ -125,7 +125,10 @@ void OsciWidget::drawBuffer(SampleBuffer::iterator &bufferPos, const SampleBuffe
QPainter painter(&m_pixmap); QPainter painter(&m_pixmap);
painter.setRenderHint(QPainter::Antialiasing); painter.setRenderHint(QPainter::Antialiasing);
painter.translate(m_pixmap.width()/2, m_pixmap.height()/2); painter.translate(m_pixmap.width()/2, m_pixmap.height()/2);
painter.scale(m_factor * m_pixmap.width() / 2.0, m_factor * m_pixmap.height() / 2.0);
// ensure 1:1 ratio
auto smallerSide = std::min(m_pixmap.width(), m_pixmap.height());
painter.scale(m_factor * smallerSide/ 2.0, m_factor * smallerSide/ 2.0);
QPen pen; QPen pen;
pen.setCosmetic(true); // let pen be scale invariant pen.setCosmetic(true); // let pen be scale invariant