- •5. Содержание
- •6. Технические требования
- •Санкт-Петербургский государственный электротехнический университет
- •(СПбГэту “лэти”)
- •Календарный план выполнения выпускной квалификационной работы
- •Реферат
- •Содержание
- •Определения, обозначения и сокращения
- •Введение
- •Обзор методов и средств разработки графических приложений для ос багрос-4000
- •БагрОс-4000 как операционная система реального времени
- •Средства разработки графического по для БагрОс-4000
- •Отрисовка кадра с помощью OpenGl
- •Спецификация OpenGl sc 1.0.1
- •Особенности работы с графикой в ос БагрОс-4000
- •Последовательный способ отрисовки
- •Единовременная отрисовка
- •Реализация и тестирование методов отрисовки
- •Реализация метода последовательной отрисовки
- •Реализация метода единовременной отрисовки
- •Тестирование методов отрисовки
- •Состав библиотеки графических примитивов
- •Управляющие функции
- •Функции отрисовки примитивов
- •Функции работы с маскированием
- •Математические функции
- •Порядок работы с библиотекой
- •Пример прикладной программы
- •Разработка и стандартизация программных средств
- •Разработка плана проекта
- •Расчёт цены проекта
- •Расчёт себестоимости проекта
- •Расчёт цены предлагаемого продукта
- •Определение кода разрабатываемого программного изделия
- •Заключение
- •Список использованных источников
- •Приложение а Фрагменты исходного кода библиотеки
Функции отрисовки примитивов
Функции отрисовки примитивов предназначены непосредственно для отрисовки примитивов в буфер кадра.
Список функций отрисовки примитивов представлен в таблице 3.2.
Таблица 3.2 – Функции отрисовки примитивов
Объявление функции |
Описание |
void gfPoint (int32 x, int32 y) |
Рисование точки в координатах «x, y» |
void gfLine (int32 x1, int32 y1, int32 x2, int32 y2) |
Рисование линии от точки «x1, y1» до точки «x2, y2» |
void gfPolyline (struct VERTEX const *pv, int32 count) |
Рисование ломаной линии по точкам в массиве «pv». Количество точек задаётся параметром «count» VERTEX – структура, содержащая в себе «x» и «y» координаты |
void gfArc (int32 x, int32 y, int32 radius, float32 startAngle, float32 sweepAngle) |
Рисование дуги окружности с центром в точке «x, y» и радиусом «radius» от угла «startAngle» до угла «sweepAngle» |
void gfBezier (struct VERTEX const *pv, int32 count, int32 edges) |
Рисование кривой Безье по точкам в массиве «pv». Количество точек указано в параметре «count», количество рёбер в параметре «edges» |
void gfCircle (int32 x, int32 y, int32 radius) |
Рисование окружности/круга в центре с координатами «x, y» и радиусом «radius» |
void gfPartialCircle (int32 x, int32 y, int32 radius, float32 startAngle, float32 sweepAngle) |
Рисование сектора окружности/круга с центром в точке «x, y» и радиусом «radius» от угла «startAngle» до угла «sweepAngle» |
void gfRing(int32 x, int32 y, int32 innerRadius, int32 outerRadius) |
Рисование кольца в центре с координатами «x, y», внутренним радиусом «innerRadius» и внешним радиусом «outerRadius» |
void gfPartialRing (int32 x, int32 y, int32 innerRadius, int32 outerRadius, float32 startAngle, float32 sweepAngle) |
Рисование сектора кольца с центром в точке «x, y», внутренним радиусом «innerRadius» и внешним радиусом «outerRadius» от угла «startAngle» до угла «sweepAngle» |
void gfRect (int32 x1, int32 y1, int32 x2, int32 y2) |
Рисование прямоугольника с диагонально-противоположными вершинами в точках «x1, y1» и «x2, y2» |
void gfPolygonFan (struct VERTEX const *pv, int32 count) |
Рисование полигона треугольниками с вершинами в элементах массива по схеме (0, 1, 2) – (0, 2, 3) – (0, 3, 4) и т.д. Количество элементов в массиве указано в параметре «count» |
void gfPolygonStrip (struct VERTEX const *pv, int32 count) |
Рисование полигона треугольниками с вершинами в элементах массива по схеме (0, 1, 2) – (1, 2, 3) – (2, 3, 4) и т.д. Количество элементов в массиве указано в параметре «count» |
void gfEllipse(int32 x, int32 y, int32 a, int32 b) |
Рисование эллипса с центром в точке «x, y» и длинами осей «a» и «b» |
void gfText(int32 x, int32 y, float32 angle, int8 const *text); |
Вывод текста в точке «x, y» в соответствии с текущим шрифтом, размером шрифта и выравниванием. Наклон строки задаётся параметром «angle» |
void gfSymbol (int32 x, int32 y) |
Вывод символа в точку «x, y» в соответствии с текущим символом |