Содержание
- 2. КООРДИНАТНЫЕ ПРЕДСТАВЛЕНИЯ Для создания изображения с помощью программного пакета необходимо задать геометрическое описание объекта, который следует
- 3. КООРДИНАТНЫЕ ПРЕДСТАВЛЕНИЯ Такие системы координат называют координатами моделирования, локальными или главными координатами. Задав формы отдельных объектов,
- 4. КООРДИНАТНЫЕ ПРЕДСТАВЛЕНИЯ После того, как заданы все элементы сцены, чтобы создать изображение, общее описание во внешних
- 5. КООРДИНАТНЫЕ ПРЕДСТАВЛЕНИЯ Еще необходимо определить видимые поверхности и обрезать части рисунка, выходящие за пределы поля зрения.
- 6. СИСТЕМЫ КООРДИНАТ Для того, чтобы, к примету, прорисовать прямолинейный отрезок, необходимо задать положение его двух концов,
- 7. ЭКРАННЫЕ КООРДИНАТЫ Местоположение на экране выражается через целочисленные экранные координаты, которые соответствуют положениям пикселей в буфере
- 8. ЭКРАННЫЕ КООРДИНАТЫ В алгоритмах для строк развертки графические примитивы задаются через координаты представления, т.е. определяются положения
- 9. АБСОЛЮТНЫЕ И ОТНОСИТЕЛЬНЫЕ КООРДИНАТЫ Рассмотренные выше системы координат формулировались через значения абсолютных координат. Т.е. задается действительное
- 10. АБСОЛЮТНЫЕ И ОТНОСИТЕЛЬНЫЕ КООРДИНАТЫ Тогда, чтобы описать такой объект, как набор соединенных между собой прямолинейных отрезков,
- 11. АБСОЛЮТНЫЕ И ОТНОСИТЕЛЬНЫЕ КООРДИНАТЫ которые, возможно, были ранее внесены в проекционную матрицу. Таким образом, систему координат
- 12. ФУНКЦИИ ТОЧЕК В OPENGL Чтобы описать геометрия точки, ее положение задается во внешней системе координат. Затем
- 13. ФУНКЦИИ ТОЧЕК В OPENGL При выводе на экран точки аргументов функции glBegin является символьная константа GL_POINTS.
- 14. ФУНКЦИИ ТОЧЕК В OPENGL Далее необходимо обозначить, какой тип данных используется для описания числовых значений координат.
- 15. ФУНКЦИИ ТОЧЕК В OPENGL int point1[] = 50,100; int point2[] = 75,150; int point3[] = 100,200;
- 16. ФУНКЦИИ ТОЧЕК В OPENGL Struct points { Glfloat x, y; } … Points pointPos; pointPos.x =
- 17. ФУНКЦИИ ПРЯМЫХ В OPENGL В графических пакетах, как правило, предлагаются функции для описания одного или нескольких
- 18. ФУНКЦИИ ПРЯМЫХ В OPENGL glClear(GL_COLOR_BUFFER_BIT); glColor3f(0, 0, 1.0); int p1[] = { 9,3 }; int p2[]
- 19. ФУНКЦИИ ПРЯМЫХ В OPENGL glClear(GL_COLOR_BUFFER_BIT); glColor3f(0, 0, 1.0); int p1[] = { 9,3 }; int p2[]
- 20. ФУНКЦИИ ПРЯМЫХ В OPENGL glClear(GL_COLOR_BUFFER_BIT); glColor3f(0, 0, 1.0); int p1[] = { 9,3 }; int p2[]
- 21. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL Прямолинейный отрезок на сцене определяется координатами его концов. Чтобы изобразить прямую
- 22. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL Характерная «зубчатость» особенно заметна в системах с невысоким разрешением. Их внешний
- 23. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. УРАВНЕНИЕ ПРЯМОЙ Положение пикселей вдоль прямой линии определяется исходя из геометрических
- 24. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. УРАВНЕНИЕ ПРЯМОЙ Для любого заданного интервала координат x(∂x) вдоль линии из
- 25. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. УРАВНЕНИЕ ПРЯМОЙ Задается пропорционально ∂х, которое рассчитывается по формуле (5). Для
- 26. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ ЦДА Цифровой дифференциальный анализатор (ЦДА) = алгоритм преобразования стандартов развертки
- 27. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ ЦДА Если тангенс угла наклона меньше или равен 1, прямая
- 28. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ ЦДА В основе уравнений (6) и (7) лежит предположение, что
- 29. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ ЦДА Этот алгоритм сведен к следующей процедуре, входом которой служат
- 30. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ ЦДА void init(void) { glClearColor(0, 0, 0, 0.0); glMatrixMode(GL_PROJECTION); gluOrtho2D(0.0,
- 31. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ ЦДА inline int round_k(const float a) { return int(a +
- 32. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ ЦДА setPixel(round_k(x), round_k(y)); for (k = 0; k { x
- 33. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ ЦДА void main(int argc, char** argv) { glutInit(&argc, argv); glutInitDisplayMode(GLUT_SINGLE
- 34. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ ЦДА
- 35. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ ЦДА Алгоритм ЦДА – более быстрый способ вычисления положений пикселей,
- 36. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ БРЕЗЕНХЕМА Алгоритм Брезенхема – точный и эффективный растровый алгоритм создания
- 37. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ БРЕЗЕНХЕМА Предположим, что мы определили , что следует наносить пиксель
- 38. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ БРЕЗЕНХЕМА d_lower - d_upper = 2 * а * (xk
- 39. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ БРЕЗЕНХЕМА Изменение значения координаты вдоль направления прямой происходит при единичном
- 40. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ БРЕЗЕНХЕМА Алгоритм Брезенхема Вводим два конца отрезка, помечая левый конец
- 41. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ БРЕЗЕНХЕМА void linesBrasenhem(int x0, int y0, int xend, int yend)
- 42. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ БРЕЗЕНХЕМА setPixel(x, y); } while (x { x++; if (p
- 43. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ БРЕЗЕНХЕМА
- 44. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ БРЕЗЕНХЕМА
- 45. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ БРЕЗЕНХЕМА Алгоритм Брезенхема можно обобщить для прямых линий с произвольным
- 46. АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В OPENGL. АЛГОРИТМ БРЕЗЕНХЕМА Наконец, можно отдельно рассматривать некоторые частные случаи: горизонтальные (
- 47. ИЗОБРАЖЕНИЕ ЛОМАНЫХ ЛИНИЙ Для построения ломаных линий следует n – 1 раз вызвать процедуру построения прямой
- 48. ПАРАЛЛЕЛЬНЫЕ АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ В рассмотренным ранее методах построения прямых положения пикселей определялись последовательно. Параллельная же
- 49. ПАРАЛЛЕЛЬНЫЕ АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ (17) где ∂х – длина линии, а длина отрезков ∂хр , на
- 50. ПАРАЛЛЕЛЬНЫЕ АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ (19) Таким образом, для k-ого сегмента начальное значение координаты e будет равным
- 51. ПАРАЛЛЕЛЬНЫЕ АЛГОРИТМЫ ПОСТРОЕНИЯ ПРЯМЫХ Еще один способ реализации параллельного алгоритма в растровых системах – соотнести с
- 53. Скачать презентацию