Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Л4_Геометрические базовые типы.doc
Скачиваний:
5
Добавлен:
21.09.2019
Размер:
117.76 Кб
Скачать

Тема: Объекты и геометрические преобразования

Лекция 4. Типы базовых объектов и соответствующие им пространства.

(Основа: Эйнджел – Интерактивная КГ, раздел 4.)

План лекции

Введение

4.1 Типы базовых объектов представимые в каждом виде пространства

4.2 Определения базовых типов (скаляры, точки и векторы): геометрическое, математическое и информационное.

4.3 Виды линейных пространств; их определения используемых в математическом обеспечении КГ: линейное (векторное), аффинное, евклидово.

4.4. Геометрические абстрактные типы данных

4.5 Возможные действия с объектами каждого типа в аффинном пространстве

Введение

Математическое обеспечение систем компьютерной графики — это совокупность методов представления и манипулирования множеством геометрических элементов, главные из которых - точки и отрезки прямых. Эти методы базируются на свойствах нескольких типов абстрактных пространств. В средствах формирования и трансформации геометрических объектов в системах КГ наиболее широко используют линейное (векторное), аффинное и евклидовое пространства. Линейное (векторное) пространство содержит объекты только двух типов: скаляры (действительные числа) и векторы. В аффинном пространстве к ним добавляется третий тип объектов — точки. В евклидовом пространстве вводится концепция расстояния.

Примерами линейных векторных пространств являются пространство геометрических векторов (направленных отрезков прямой) и пространство алгебраических векторов в виде совокупностей n действительных чисел. Вообще, под векторами можно понимать все, что угодно – множества вещественных объектов или множество функций с определенными свойствами или просто какие-то абстрактные формы. Все они подчиняются набору определенных в данном пространстве действий (аксиом), независимо от своего реального представления.

В математическом обеспечении компьютерной графики понятие вектор трактуется как направленный отрезок прямой, представленный совокупностью n чисел. Здесь будем рассматривать главные свойства трех перечисленных типов пространств и имеющихся в них правил манипулирования объектами. Наиболее удобно считать эти объекты (скаляры, векторы и точки) абстрактными типами данных, а аксиомы, характеризующие свойства пространств, как множество операций, допустимых при работе с этими типами данных.

4. Объекты и геометрические преобразования

4.1. Типы базовых объектов: скаляры, точки и векторы

Компьютерная графика имеет дело со множеством геометрических объектов, таких как точки, многоугольники и многогранники. Все разнообразие геометрических объектов можно свести к ограниченному множеству простейших сущностей. Для этого понадобятся три базовых типа — скаляры, точки и векторы.

Существуют, по крайней мере, три варианта определения этих сущностей, в зависимости от того, с какой точки зрения их рассматривать — чисто математической (формальной), геометрической или с точки зрения программной реализации. В конечном счете, программист или проектант имеет дело со всеми тремя вариантами, хотя на первый взгляд и кажется, что они мало связаны друг с другом.

Существует огромное множество примеров каждого из трех базовых типов, здесь будем рассматривать только по одному представителю каждого типа. Наибольшую важность представляет вопрос об отличиях между математическим определением каждого типа и его частной реализацией.

4.2. Геометрическое определение базовых типов

Точка.

Точка в компьютерной графике играет роль фундаментального геометрического объекта.

В трехмерной геометрической системе единственным атрибутом точки является ее положение.

Математическая точка размера не имеет. Точки существуют в пространстве независимо от какой-либо системы координат. Это конечно неудобно, так как на определенную точку придется ссылаться как на "точку вот там" или "синяя точка рядом с красной". Проблема ссылок решается с помощью систем координат или фреймов (раздел 4.3). Сейчас попробуем установить, как далеко можно продвинуться, не обращаясь к конкретной системе отсчета.

Скаляры — это всегда действительные числа. Скаляры не имеют геометрических свойств, они требуются в качестве единиц измерения. Например, длина отрезка есть скаляр. Скаляром является и угол вращения объекта. Множество вещественных чисел и операций над ними представляет собой (или образуют) скалярное поле. Примерами скаляров могут быть вещественные и комплексные числа, а также рациональные функции.

Векторы.

В КГ точки часто связываются направленными отрезками, см рис. 1

Рис.1 а) две точки, связаны направленным отрезком; б) направленные отрезки прямой

Такие отрезки прямых и есть векторы. В более общем смысле физики и инженеры используют термин вектор для обозначения любой величины, характеризуемой направлением и значением. Физические величины, такие как скорость и сила, есть векторы.

Однако вектор в этом смысле не имеет фиксированной точки приложения (позиции). Следовательно, направленные отрезки, показанные на рис. 2, являются одинаковыми векторами, поскольку имеют одно и то же направление и одинаковую длину, хотя и разные точки приложения.

Рис.2 Одинаковые векторы (идентичные свободные векторы)

Термины вектор и направленный отрезок будем использовать как синонимы.

Длину и направление вектора характеризуют вещественными числами. Например, вектор А имеет то же направление, что и вектор В, но В имеет длину в два раза большую, чем А, а потому можно записать В = 2А. Вектор С имеет ту же длину, что и А, но противоположное направление, а потому соотношение между ними выразится формулой С = - А.

А

А

Рис.3 Соотношения между векторами: (слева) выраженное с помощью вещественных чисел, (справа) через правило соединения векторов

Объединять векторы можно с помощью правила составления их начала одного с концом другого (head-to-tail rule), схематически представленного на рис. 3 справа. На этом рисунке конец вектора А приставлен к началу вектора В и сформирован новый вектор С, величину и направление которого определяют отрезком, соединяющим начало вектора А и конец вектора В. Этот новый вектор называют суммой векторов А и В и записывают как соотношение между ними в виде С=А+В.

Поскольку векторы не имеют фиксированной точки приложения, то для геометрического сложения векторов их можно переносить параллельно самим себе куда угодно!!!

Точки и векторы — это разные геометрические типы. Геометрическое представление точки в виде направленного отрезка [•р = (х, у,)], соединяющего некоторую опорную точку с заданной (рис. 4), следует рассматривать как сомнительное, так как опорная точка может быть где угодно, т.е. ее местоположение неопределено.

•р = (х, у,)

Рис.4

Однако существует операция, в которой связываются точки и направленный отрезок (рис. 1.) Можно использовать направленный отрезок для перемещения от одной точки к другой. Точно так же две точки определяют отрезок, проведенный между ними, а точка и вектор определяют вторую точку. Таким образом, правильная интерпретация рис. 4 состоит в том, что данный вектор можно определить как исходящий из фиксированной опорной точки (начала системы координат) и приходящий в определенную точку пространства. Важно то, что вектор, как и точка, существует независимо от опорной системы, но, дальше будет показано, что работать с их представлениями требуется в определенной системе координат.