Я создал приложение OpenGL с Qt для визуализации векторного поля магнитного поля. Векторное поле отображается стрелками с цветным кодом, указывающим их значение. Теперь проблема состоит в том, что я хочу создать ключ для карты векторного поля, указывающий, какое значение имеют значения самого высокого и самого низкого цветов, например, красный цвет равен 10 нТл, а зеленый - 0,1 нТл.
Масштабирование цветов выполнено (благодаря окраске HSV, благодаря Qt, стало проще), но мне все еще нужно создать прямоугольник в верхнем правом углу с градиентом, чтобы использовать его в качестве ключа для графика I я делаю.
Я использовал код от:
http://en.wikibooks.org/wiki/OpenGL_Programming/Basics/Color
следующим образом:
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glBegin(GL_QUADS);
glColor3d(simulationSettings->hotColour.redF(), simulationSettings->hotColour.greenF(), simulationSettings->hotColour.blueF());
glVertex2d(-0.75, 0.75);
glColor3d(simulationSettings->coldColour.redF(), simulationSettings->coldColour.greenF(), simulationSettings->coldColour.blueF());
glVertex2d(-0.75, -0.75);
glColor3d(simulationSettings->coldColour.redF(), simulationSettings->coldColour.greenF(), simulationSettings->coldColour.blueF());
glVertex2d(0.75, -0.75);
glColor3d(simulationSettings->hotColour.redF(), simulationSettings->hotColour.greenF(), simulationSettings->hotColour.blueF());
glVertex2d(0.75, 0.75);
glEnd();
но это не сработало. Я даже пытался скопировать код как есть, и все, что я получил, это желтый квадрат в середине экрана.
Что мне нужно изменить в конфигурации OpenGL, чтобы включить цветовые градиенты?