Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОТветы на зачет.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
1.52 Mб
Скачать

2D и 3d моделирование в рамках графических систем

Виды геометрических моделей и их свойства

Абстрактно определим геометрический объект как совокупность точек в евклидовом пространстве. Каждая точка определяется набором своих координатных переменных: P = (x1, x2,.., xn). Для описания окружающих объектов мы строим твердые тела или тела. Тела в свою очередь описываются точками, линиями и поверхностями. Все они обладают определенными свойствами. Точки, линии, поверхности и тела будем называть геометрическими объектами.

Геометрическое описание -> алгебраическое описание -> алгоритм -> программа

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

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

Типы сложности геометрических проблем:

- Проблема размерности.

Геометрия работает чрезвычайно неодинаково в пространствах разной размерности. Например, все просто с углами на плоскости, но значительно сложнее в 3-х измерениях.

- Проблема аналитической сложности.

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

- Проблема комбинаторной сложности.

Возникает, когда имеем много данных: даже если мы имеем дело только с точками, то много точек могут вызвать проблемы. Сложные объекты, да еще различных геометрических типов резко усиливают как вычислительную сложность, так и проблемы со сходимостью алгоритмов и т.п.

Методы описания кривых и поверхностей.

- Неявные уравнения.

Неявные уравнения классифицируют все точки пространства на два множества; поэтому кривая или поверхность, каковые мы пытаемся таким образом определить, являются границей между этими двумя множествами. Простейший путь сделать это - вычислить значение функции f(x,y,z) в каждой точке пространства. Результат - число: если оно отрицательно, то точка - по одну сторону от поверхности или кривой; если положительно - по другую. Это можно трактовать как отображение из пространства на одномерную прямую линию.

Кривая или поверхность сама - это множество точек которые отображаются в начало этой прямой, т.е. точки, для которых f(x,y,z) = 0. Таким образом заданные кривые или поверхности называются неявными.

Примеры:

Прямая линия: ax+by+c = 0;

Сфера: r**2-(x-x0)**2-(y-y0)**2-(z-z0)**2 = 0.

- Параметрические уравнения.

Получается введением одной или более переменных (“параметров”) и вычисленим x, y, z функции от них:

x = f1(t,u,v,...)

y = f2(... )

z = f3(...........) ...

параметры можно трактовать как другое множество координат; соответственно параметрические кривая или поверхность - это отображения в смысле, противоположном неявным: в случае кривой - переход от одномерной прямой линии в двух- или трехмерное пространство. Количество координат и количество параметров могут определяться независимо: например, можно выполнить отображение которое “забивает” двумерное пространство в 4-ч-мерное. Однако, обычно мы имеем функции одного параметра в двух или трех размерностях (плоская или пространственная кривая) и функции двух параметров в пространстве (поверхности).

Примеры:

Прямая линия:

x = x0+f*t y = y0+g*t

Сфера:

x = x0 + r*cos(A)*cos(B) y = y0 + r*sin(A)*sin(B) z = z0 + r*sin(B)

Здесь углы А и В - широта и долгота соответственно.