mirror of
https://github.com/f4exb/sdrangel.git
synced 2025-05-23 10:48:41 -04:00
OpenGL modernization: draw histogram grid power lines the new way
This commit is contained in:
parent
a8253f0bd0
commit
c7b1bb3912
@ -1334,26 +1334,25 @@ void GLSpectrum::paintGL()
|
|||||||
glPopMatrix();
|
glPopMatrix();
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: paint histogram grid
|
// paint histogram grid
|
||||||
if((m_displayHistogram || m_displayMaxHold || m_displayCurrent) && (m_displayGrid)) {
|
if((m_displayHistogram || m_displayMaxHold || m_displayCurrent) && (m_displayGrid))
|
||||||
|
{
|
||||||
|
const ScaleEngine::TickList* tickList;
|
||||||
|
const ScaleEngine::Tick* tick;
|
||||||
|
tickList = &m_powerScale.getTickList();
|
||||||
|
|
||||||
|
#ifdef GL_DEPRECATED
|
||||||
glPushMatrix();
|
glPushMatrix();
|
||||||
glTranslatef(m_glHistogramRect.x(), m_glHistogramRect.y(), 0);
|
glTranslatef(m_glHistogramRect.x(), m_glHistogramRect.y(), 0);
|
||||||
glScalef(m_glHistogramRect.width(), m_glHistogramRect.height(), 1);
|
glScalef(m_glHistogramRect.width(), m_glHistogramRect.height(), 1);
|
||||||
|
|
||||||
glEnable(GL_BLEND);
|
for (int i= 0; i < tickList->count(); i++)
|
||||||
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
{
|
||||||
glLineWidth(1.0f);
|
|
||||||
glColor4f(1, 1, 1, m_displayGridIntensity / 100.0);
|
|
||||||
|
|
||||||
const ScaleEngine::TickList* tickList;
|
|
||||||
const ScaleEngine::Tick* tick;
|
|
||||||
|
|
||||||
tickList = &m_powerScale.getTickList();
|
|
||||||
#ifdef GL_DEPRECATED
|
|
||||||
for(int i= 0; i < tickList->count(); i++) {
|
|
||||||
tick = &(*tickList)[i];
|
tick = &(*tickList)[i];
|
||||||
if(tick->major) {
|
if(tick->major)
|
||||||
if(tick->textSize > 0) {
|
{
|
||||||
|
if(tick->textSize > 0)
|
||||||
|
{
|
||||||
float y = tick->pos / m_powerScale.getSize();
|
float y = tick->pos / m_powerScale.getSize();
|
||||||
glBegin(GL_LINE_LOOP);
|
glBegin(GL_LINE_LOOP);
|
||||||
glVertex2f(0, 1-y);
|
glVertex2f(0, 1-y);
|
||||||
@ -1362,14 +1361,35 @@ void GLSpectrum::paintGL()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
glEnable(GL_BLEND);
|
||||||
|
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||||
|
glLineWidth(1.0f);
|
||||||
|
glColor4f(1, 1, 1, m_displayGridIntensity / 100.0);
|
||||||
|
|
||||||
|
glPopMatrix();
|
||||||
#else
|
#else
|
||||||
|
for (int i= 0; i < tickList->count(); i++)
|
||||||
|
{
|
||||||
|
tick = &(*tickList)[i];
|
||||||
|
|
||||||
|
if(tick->major) {
|
||||||
|
if(tick->textSize > 0) {
|
||||||
|
float y = tick->pos / m_powerScale.getSize();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
{
|
{
|
||||||
GLfloat q3[4*tickList->count()];
|
GLfloat q3[4*tickList->count()];
|
||||||
int effectiveTicks = 0;
|
int effectiveTicks = 0;
|
||||||
for(int i= 0; i < tickList->count(); i++) {
|
|
||||||
|
for(int i= 0; i < tickList->count(); i++)
|
||||||
|
{
|
||||||
tick = &(*tickList)[i];
|
tick = &(*tickList)[i];
|
||||||
if(tick->major) {
|
if(tick->major)
|
||||||
if(tick->textSize > 0) {
|
{
|
||||||
|
if(tick->textSize > 0)
|
||||||
|
{
|
||||||
float y = tick->pos / m_powerScale.getSize();
|
float y = tick->pos / m_powerScale.getSize();
|
||||||
q3[4*effectiveTicks] = 0;
|
q3[4*effectiveTicks] = 0;
|
||||||
q3[4*effectiveTicks+1] = 1-y;
|
q3[4*effectiveTicks+1] = 1-y;
|
||||||
@ -1379,20 +1399,17 @@ void GLSpectrum::paintGL()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#ifdef GL_ANDROID
|
|
||||||
glEnableVertexAttribArray(GL_VERTEX_ARRAY);
|
QVector4D color(1.0f, 1.0f, 1.0f, (float) m_displayGridIntensity / 100.0f);
|
||||||
glVertexAttribPointer(GL_VERTEX_ARRAY, 2, GL_FLOAT, GL_FALSE, 0, q3);
|
m_glShaderSimple.drawSegments(m_glHistogramBoxMatrix, color, q3, 2*effectiveTicks);
|
||||||
glDrawArrays(GL_LINES, 0, 2*effectiveTicks);
|
|
||||||
glDisableVertexAttribArray(GL_VERTEX_ARRAY);
|
|
||||||
#else
|
|
||||||
glEnableClientState(GL_VERTEX_ARRAY);
|
|
||||||
glVertexPointer(2, GL_FLOAT, 0, q3);
|
|
||||||
glDrawArrays(GL_LINES, 0, 2*effectiveTicks);
|
|
||||||
glDisableClientState(GL_VERTEX_ARRAY);
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
tickList = &m_frequencyScale.getTickList();
|
tickList = &m_frequencyScale.getTickList();
|
||||||
|
|
||||||
|
glPushMatrix();
|
||||||
|
glTranslatef(m_glHistogramRect.x(), m_glHistogramRect.y(), 0);
|
||||||
|
glScalef(m_glHistogramRect.width(), m_glHistogramRect.height(), 1);
|
||||||
|
|
||||||
#ifdef GL_DEPRECATED
|
#ifdef GL_DEPRECATED
|
||||||
for(int i= 0; i < tickList->count(); i++) {
|
for(int i= 0; i < tickList->count(); i++) {
|
||||||
tick = &(*tickList)[i];
|
tick = &(*tickList)[i];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user