Store only one value for afterglow
This commit is contained in:
@@ -34,7 +34,6 @@ void OsciWidget::setAfterglow(float afterglow){
|
|||||||
m_afterglow = afterglow;
|
m_afterglow = afterglow;
|
||||||
// percentage of the image that should be visible after one second
|
// percentage of the image that should be visible after one second
|
||||||
// i.e. factor^fps=afterglow -> factor = afterglow^(1/fps)
|
// i.e. factor^fps=afterglow -> factor = afterglow^(1/fps)
|
||||||
m_afterglowColor = 255 * pow(afterglow, 1.0/m_fps);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void OsciWidget::setLightspeed(int lightspeed) {
|
void OsciWidget::setLightspeed(int lightspeed) {
|
||||||
@@ -86,7 +85,8 @@ void OsciWidget::updateFrameBuffer()
|
|||||||
// darkening last frame
|
// darkening last frame
|
||||||
painter.setCompositionMode(QPainter::CompositionMode_Multiply);
|
painter.setCompositionMode(QPainter::CompositionMode_Multiply);
|
||||||
painter.setPen({});
|
painter.setPen({});
|
||||||
painter.setBrush(QColor(m_afterglowColor, m_afterglowColor, m_afterglowColor));
|
auto afterglowColor = 255 * pow(m_afterglow, 1.0/m_fps);
|
||||||
|
painter.setBrush(QColor(afterglowColor, afterglowColor, afterglowColor));
|
||||||
painter.drawRect(m_pixmap.rect());
|
painter.drawRect(m_pixmap.rect());
|
||||||
|
|
||||||
// drawing new lines ontop
|
// drawing new lines ontop
|
||||||
|
@@ -44,7 +44,7 @@ private:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
float m_factor{2.f};
|
float m_factor{2.f};
|
||||||
int m_fps{30}, m_afterglowColor{175};
|
int m_fps{30};
|
||||||
float m_afterglow{0.2};
|
float m_afterglow{0.2};
|
||||||
float m_lightspeed{35.f};
|
float m_lightspeed{35.f};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user