2015-01-19 6 views
0

У меня есть 2D-матрица GSL, заполненная реальными неотрицательными значениями.Визуализация 2D-матрицы GSL в SDL 2.0

Кто-нибудь знает простой способ визуализировать эту матрицу как изображение в оттенках серого в SDL 2.0?

+0

Какая у вас проблема с вашим текущим подходом? – user694733

+0

@ user694733: Я нашел функцию под названием «SDL_CreateRGBSurfaceFrom», которая, как я думаю, может быть использована для моих целей после установки последних 4 аргументов в 0xFF0000. Однако проблемы состоят в том, что сначала мои данные хранятся как массив неотрицательных удвоений внутри матрицы gsl, и я не знаю, как передать это первому аргументу вышеуказанной функции. Во-вторых, как установить глубину и высоту тона? (4-й и 5-й аргументы) – Beginner

+0

Я не думаю, что вы можете создать поверхность прямо из парных. Сначала вам нужно преобразовать эти значения в целые числа. [Глубина и шаг кажутся зависимыми от того, в каком формате пикселя вы делаете преобразование.] (Http://wiki.libsdl.org/SDL_CreateRGBSurfaceFrom) – user694733

ответ

0

Вы не можете рисовать целые числа/двойные числа непосредственно в SDL.
Вам необходимо сначала преобразовать их в символы.
Простым способом рисования текстов было бы использование библиотеки SDL_ttf для загрузки шрифтов True Type.
Вы должны загрузить шрифт для визуализации строки.
Затем создайте визуализированную поверхность, используя строку и шрифт.
Затем создайте текстуру с поверхности.
Наконец, визуализируйте текстуру, и у вас будет.
Предполагая, что вы знаете основы SDL, код идет как этот

char* text = yourIntegerConvertedIntoCString; 
TTF_Font* font = TTF_OpenFont(path, ptsize); 
SDL_Surface* surface = TTF_RenderText_Solid(font, text, color); 
SDL_Texture* texture = SDL_CreateTextureFromSurface(renderer, surface); 
SDL_FreeSurface(textSurface); 

Затем вы оказываете текстуру нормально, как вы делаете с другими текстурами. here

+0

Я не понимаю, зачем мне нужны шрифты True Type для визуализации 2D-матрицы: s Вы имеете в виду, что каждое значение в матрице будет сопоставлено определенной букве? Я действительно смущен – Beginner

Смежные вопросы