- •1.Компьютерная графика. Определение. Классификация. Задачи компьютерной графики.
- •2.Система машинной графики. Области применения компьютерной графики.
- •3.Способы представления объектов в компьютерной графике. 2d и 3d Модели.
- •4. Двумерные геометрические (аффинные) преобразования
- •5.Аффинные преобразования в трехмерном пространстве. Масштабирование, перенос, однородные координаты.
- •6.Аффинные преобразования в трехмерном пространстве. Повороты. Композиция преобразований.
- •7.Проецирование. Виды проекций. Перспективная проекция.
- •8.Удаления невидимых линий и поверхностей. Алгоритм Ньюэлла-Ньюэлла-Санча.
- •9.Удаления невидимых линий и поверхностей. Алгоритм, использующий z-буфер.
- •10.Удаления невидимых линий и поверхностей. Алгоритм Вейлера-Азертона.
- •11.Алгоритм определения видимых поверхностей путем трассировки лучей.
- •12.Сортировка граней по глубине. Алгоритм художника.
- •13.Триангуляция Делоне.
- •14.Простая модель освещения.
3.Способы представления объектов в компьютерной графике. 2d и 3d Модели.
По способам представления объектов графику можно разделить на категории:
Двухмерная:
(2D — от англ. two dimensions — «два измерения») компьютерная графика классифицируется по типу представления графической информации, и следующими из него алгоритмами обработки изображений. Обычно компьютерную графику разделяют на векторную и растровую и обособляют ещё и фрактальный тип представления изображений.
Растровый метод – изображение представляется в виде набора окрашенных точек. Массив простейших элементов (пикселей), каждый пиксель имеет строго определенное положение и одно единственное свойство – цвет. Массив кодов определяющих цвет пикселей хранится в области памяти - буфер кадра. Глубина буфера кадра говорит о количестве бит выделенных для хранения информации об одном пикселе. Растровую графику применяют при разработке электронных (мультимедийных) и полиграфических изданий.
Векторный метод – это метод представления изображения в виде совокупности отрезков и дуг и т. д. В данном случае вектор – это набор данных, характеризующих какой–либо объект. Программные средства для работы с векторной графикой предназначены для создания иллюстраций и в меньшей степени для их обработки.
Фрактальная графика, как и векторная – вычисляемая, но отличается от неё тем, что никакие объекты в памяти компьютера не хранятся. Изображение строится по уравнению (или по системе уравнений), поэтому ничего, кроме формулы, хранить не надо. Изменив коэффициенты в уравнении, можно получить совершенно другую картину.
Трёхмерная графика:
(3D — от англ. three dimensions — «три измерения») оперирует с объектами в трёхмерном пространстве. Обычно результаты представляют собой плоскую картинку, проекцию. Трёхмерная компьютерная графика широко используется в кино, компьютерных играх. В трёхмерной компьютерной графике все объекты обычно представляются как набор поверхностей или частиц. Минимальную поверхность называют полигоном. В качестве полигона обычно выбирают треугольники. Всеми визуальными преобразованиями в 3D-графике управляют матрицы. В компьютерной графике используется 3 вида матриц:
1) матрица поворота
2) матрица сдвига
3) матрица масштабирования
Любой полигон можно представить в виде набора из координат его вершин. Так, у треугольника будет 3 вершины. Координаты каждой вершины представляют собой вектор (x, y, z). Умножив вектор на соответствующую матрицу, мы получим новый вектор. Сделав такое преобразование со всеми вершинами полигона, получим новый полигон, а преобразовав все полигоны, получим новый объект, повёрнутый, сдвинутый или масштабированный относительно исходного.
4. Двумерные геометрические (аффинные) преобразования
В компьютерной графике большинство объектов определяются с помощью точек или вершин, точка на плоскости представляется двумя координатами Х У, эту размерность представляют в виде матрицы 2 на 1, в этом случае говорят, называют – вектор-столбец и если используются матрицы 1 на 2, то называют вектор-строка.
В трехмерном пространстве точка определяется тройкой координат, то определяется [X Y Z] – координатный вектор.
Правила
матричной алгебры определяют набор
допустимых значений и допустимых
операций над координатным вектором,
если геометрические преобразования
представить в виде матрицы, то результат
преобразования точки можно представить
следующей формулой
P – исходный координатный вектор
M – матрица математического …
P’ – геометрический вектор, полученный в результате преобразований
Допустим, на плоскости введена прямолинейная координатная система. Тогда каждой точке M ставится в соответствие упорядоченная пара чисел (x, y) ее координат (рис. 1). Вводя на плоскости еще одну прямолинейную систему координат, поставим в соответствие той же точке M другую пару чисел – (x*, y*). Рис. 1
Переход от одной прямолинейной координатной системы на плоскости к другой описывается следующими соотношениями:
(*)
где
– произвольные числа, связанные
неравенством:
В дальнейшем будем рассматривать формулы
(*) как правило, согласно которому в
заданной системе координат преобразуются
точки плоскости.
В аффинных преобразованиях особую роль играют несколько важных частных случаев, имеющих хорошо прослеживаемые геометрические характеристики. Рис. 2
А. Поворот вокруг начальной точки на угол j (рис. 2а) описывается формулами
Б. Растяжение (сжатие) вдоль координатных осей (рис. 2б) можно задать так:
В.
Отражение относительно оси абсцисс
(рис. 2в) задается при помощи формул
Г.
Перенос (рис. 2г) обеспечивают соотношения
Как доказывается в курсе аналитической геометрии, любое преобразование вида (*) всегда можно представить как последовательное исполнение (суперпозицию) простейших преобразований вида А, Б, В и Г.
Для эффективного использования этих известных формул в задачах компьютерной графики более удобной является их матричная запись. Матрицы, для случаев А, Б и В легко строятся и имеют соответственно следующий вид:
Для решения задач весьма желательно
охватить матричным подходом все четыре
простейших преобразования (в том числе
и перенос), а, значит, и общее аффинное
преобразование. Этого можно достичь
путем описания произвольной точки
плоскости не двумя координатами, как
это было сделано выше, а упорядоченной
тройкой чисел.
