Zmeika
простая аркадная игра
 Указатель Классы Пространства имен Файлы Функции Переменные Определения типов Перечисления Страницы
Файл Screen.cpp
#include <GL/freeglut.h>
#include "Screen.hpp"
#include <algorithm>
#include <mutex>
Граф включаемых заголовочных файлов для Screen.cpp:

Определения типов

using Lock = std::lock_guard< std::mutex >
 

Функции

std::size_t lines_in_text (const std::string &text)
 определить количество строк в тексте (сколько строчек по вертикали будет занимать изображение)
 
void drawString (void *font, const std::string &text, float left, float bottom, float right, float top)
 FreeGlut-реализация средств отображения текста, пытается "впихнуть" строку в указанный прямоугольник Подробнее...
 
void fitWindow (float target_width, float target_height)
 установить размеры окна Подробнее...
 

Подробное описание

Реализация элементов Screen.hpp.

Функции

void drawString ( void *  font,
const std::string &  text,
float  left,
float  bottom,
float  right = 0.f,
float  top = 0.f 
)

FreeGlut-реализация средств отображения текста, пытается "впихнуть" строку в указанный прямоугольник

Аргументы
fontможет быть GLUT_STROKE_ROMAN или GLUT_STROKE_MONO_ROMAN
rightможет быть <= left, тогда выбирается автоматически
topможет быть <= bottom, тогда выбирается автоматически Для выбора толщины линий, которыми рисуется текст, можно использовать glLineWidth(толщина в пикселях).

Граф вызовов:

Граф вызова функции:

void fitWindow ( float  target_width,
float  target_height 
)

установить размеры окна

Аргументы
target_widthжелаемая ширина окна (пиксели)
target_heightжелаемая высота окна (пиксели)

В случае выхода за пределы экрана, вписывает в экран в пропорции target_width : target_height. Естественно, оба параметра должны быть больше нуля. Позиционирует окно в центре экрана.

Граф вызовов:

Граф вызова функции: