Создание трехмерной графики с использованием математических формул. — КиберПедия 

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

Создание трехмерной графики с использованием математических формул.

2021-04-19 46
Создание трехмерной графики с использованием математических формул. 0.00 из 5.00 0 оценок
Заказать работу

Система координат

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

Соответственно, горизонтальная составляющая координат (ось X) направлена слева направо, а вертикальная составляющая (ось Y) - сверху вниз. При создании трехмерной графики приходится учитывать третье измерение. Для определения кажущейся удаленности объектов служит третье измерение (ось Z).

Создание трехмерного объекта

Объемный рисунок - это всего лишь видимость. Созданное трехмерное изображение остается двухмерным, так как экран монитора остается плоским.

Изменение координаты Z влечет за собой изменение координат X и Y в двухмерном измерении.

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

Зададим координаты двух точек, расположенных в трехмерном пространстве и посмотрим, как изменяются вертикальная и горизонтальная координата в зависимости от изменения координаты Z. Координату, определяющую глубину расположения рисунка можно рассматривать как величину условную, ее изменение влечет за собой всего лишь изменение координат X и Y.

Выявим математическую зависимость между координатами точек. Это необходимо для того, чтобы размеры между отдельными элементами рисунка были строго пропорциональны друг другу. Таким образом, определив величину координаты Z, можно определить соответствующие ей величины горизонтальных и вертикальных координат. Это будет выглядеть так:

 

)                              (1)

                           (2)

 

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

 

                         (3)

                         (4)

 

Если мы хотим получить точку с координатами (X1, Y1, Z1), то нам следует создать для ее отображения точку с координатами X и Y. Имеются ввиду реальные координаты, то есть те, которые использует компьютер. Данные формулы справедливы только для того случая, когда точка, определяющая начало созданной вами системы координат совпадает с началом отсчета компьютерной системы координат. Точка, являющаяся началом нарисованной системы координат, определена нами в трехмерном пространстве как имеющая следующие координаты: X =0, Y = 0, Z = 0.

Реальные ее координаты равны: X = 20 и Y = 300. Так как при расчетах действий программы компьютер будет учитывать только собственную (экранную) систему координат. Поэтому необходимо установить прочную связь между всеми системами координат участвующими в работе создаваемой вами программы. Применительно к нашему случаю надо добавлять к координатам выбранной точки реальные координаты начала созданной трехмерной системы координат.

Приведенные выше формулы в окончательном виде будут выглядеть так:

 

                            (5)

                            (6)

 

X0 и Y0 - это реальные координаты точки, определяющей начало созданной нами трехмерной системы координат

Движение объектов.

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

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

                                                                                         (7)

                                          (8)

 

Эти точки находятся на равном расстоянии, соответственно, слева и справа от центра экрана. А при переводе в трехмерные координаты обязательно следует указать координаты центральной точки:

 

       (9)

(10)

 

Вращение вершин фигуры вокруг OX

 

(11)

(12)

(13)

 

Вращение вокруг OY

 

(14)

  (15)

(16)

 

Вращение вокруг Oz

 

(17)

   (18)

(19)

 

Затем их необходимо перевести в экранные координаты вершин, учитывая ось Z

 

  (20)

  (21)


Поделиться с друзьями:

Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.016 с.