Составные геометрические объекты в трехмерной графике. Трехмерная графика. Визуализация трёхмерной графики в играх и прикладных программах

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

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

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

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

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

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

Технология трехмерного моделирования заключается в следующем:

· проектирование и создание виртуального каркаса («скелета») объекта, наиболее полно соответствующего его реальной форме;

· проектирование и создание виртуальных материалов, по физическим свойствам визуализации похожим на реальные;

· присвоение материалов различным частям поверхности объекта (проектирование текстуры на объект);

· настройка физических параметров пространства, в котором будет действовать объект, - задать освещение, гравитацию, свойства атмосферы, свойства взаимодействующих объектов и поверхностей, задание траектории движения объектов;


· расчет результирующей последовательности кадров;

· наложение поверхностных эффектов на итоговый анимационный ролик.

Модель. Для изображения трехмерных объектов на экране монитора требуется проведение серии процессов (обычно называемых конвейром) с последующей трансляцией результата в двумерный вид. Первоначально объект представляется в виде набора точек, или координат, в трехмерном пространстве. Трехмерная система координат определяется тремя осями: горизонтальной, вертикальной и глубины, обычно называемых, соответственно, осями X, Y и Z. Объектом может быть дом, человек, машина, самолет или целый 3D мир и координаты определяют положение вершин (узловых точек), из которых состоит объект, в пространстве. Соединив вершины объекта линиями мы получим каркасную модель, называемую так из-за того, что видимыми являются только края поверхностей трехмерного тела. Каркасная модель определяет области, составляющие поверхности объекта, которые могут быть заполнены цветом, текстурами и освещаться лучами света.

Разновидности 3D-графики. Существуют следующие разновидности 3D-графики: полигональная, аналитическая, фрактальная, сплайновая.

Полигональная графика является наиболее распространенной. Это объясняется прежде всего высокой скоростью ее обработки. Любой объект полигональной графики задается набором полигонов. Полигон – это плоский многоугольник. Простейшим вариантом являются треуголные полигоны, ибо, как известно, через любые три точки в пространстве можно провести плоскость. Каждый полигон задается набором точек. Точка задается тремя координатами – X, Y, Z. Таким образом можно задать 3-мерный объект как массив или структуру.

Аналитическая графика заключается в том, что объекты задаются аналитически, т. е. формулами. Например: шар радиуса r с центром в точке (x 0 , y 0 , z 0) описывается формулой (x-x 0) 2 + (y-y 0) 2 + (z-z 0) 2 = r 2 . Комбинируя различные формулы друг с другом, можно получить объекты сложной формы. Но вся сложность заключается в нахождении формулы требуемого объекта.

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

Фрактальная графика основана на понятии фрактала - самоподобия. Объект называют самоподобным, когда увеличенные части объекта походят на сам объект и друг на друга. К «самоподобному» классу относится местность. Так зазубренный край сломанного камня похож на горный хребет на горизонте. Фрактальная графика, как и векторная, основана на математических вычислениях. Базовым элементом фрактальной графики является математическая формула, поэтому никаких объектов в памяти компьютера не хранится и изображение строится исключительно по уравнениям.

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

Сплайновая графика основана на понятии сплайна. Термин «сплайн» от английского spline. Так называется гибкая полоска стали, при помощи которой чертежники проводят через заданные точки плавные кривые. В былые времена подобный способ плавных обводов различных тел (корпус корабля, кузов автомобиля) был широко распространен в практике машиностроения. В результате форма тела задавалась при помощи набора очень точно изготовленных сечений-плазов. Появление компьютеров позволило перейти от этого, плазово-шаблонного, метода к более эффективному способу задания поверхности обтекаемого тела. В основе этого подхода к описанию поверхностей лежит использование сравнительно несложных формул, позволяющих воспроизводить облик изделия с необходимой точностью.

При моделировании сплайнами чаще всего применяется метод бикубических рациональных B-сплайнов на неравномерной сетке (NURBS). Вид поверхности при этом определяется расположенной в пространстве сеткой опорных точек. Каждой точке присваивается коэффициент, величина которого определяет степень ее влияния на часть поверхности, проходящей вблизи точки. От взаимного расположения точек и величины коэффициентов зависит форма и «гладкость» поверхности.

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

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

· Bouknight – поверхность с диффузным отражением без бликов (например матовый пластик);

· Phong – поверхность со структурированными микроповерхностями (например, металлические);

· Blinn – поверхность со специальным распределением микронеровностей с учетом взаимных перекрытий (например, глянец);

· Whitted – модель, позволяющая дополнительно учитывать поляризацию света;

· Hall – модель, позволяющая корректировать направления отражения и параметры преломления света.

Закраска поверхностей осуществляется методами Гуро (gouraud) или Фонга (Phong). В первом случае цвет примитива рассчитывается в его вершинах, а затем линейно интерполируется по поверхности. Во втором случае строится нормаль к объекту в целом, ее вектор интерполируется по поверхности составляющих примитивов и освещение рассчитывается для каждой точки.

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

· Свет, пришедший с обратной стороны поверхности, т. е. преломленный свет (Refracted);

· Свет, равномерно рассеиваемый поверхностью (Diffuse);

· Зеркально отраженный свет (Reflected);

· Блики, т. е. отраженный свет источников (Specular);

· Собственное свечение поверхности (Self Illumination).

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

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

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

· Растворенный свет (Ambitnt Light), являющийся аналогом равномерного светового фона. Он не имеет геометрических параметров и характеризуется только цветом и интенсивностью.

· Удаленный не точечный источник называют удаленным светом (Distant Light). Ему присваивают конкретные параметры (координаты). Аналог в природе – Солнце.

· Точечный источник света (Point Light Source) равномерно испускает свет во всех направлениях и также имеет координаты. Аналог в технике – электрическая лампочка.

· Направленный источник света (Direct Light Source) кроме местоположения характеризуется направлением светового потока, углами раствора полного конуса света и его наиболее яркого пятна. Аналог в технике – прожектор.

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

· Из точки наблюдения сцены посылается в пространство виртуальный луч по траектории которого должно прийти изображение в точку наблюдения.

· Для определения параметров приходящего луча все объекты сцены проверяются на пересечение с траекторией наблюдения. Если пресечения не происходит, то считается, что луч попал в фон сцены и приходящая информация определяется параметрами фона. Если траектория пересекается с объектом, то в точке сопорикосновения рассчитывается свет, уходящий в точку наблюдения в соответствии с параметрами материала.

После завершения конструирования и визуализации объекта приступают к его «оживлению», т. е. заданию параметров движения. Компьютерная анимация базируется на ключевых кадрах. В первом кадре объект выставляется в исходное положение. Через определенный промежуток (например, в восьмом кадре) задается новое положение объекта и так далее до конечного положения. Промежуточные положения вычисляет программа по специальному алгоритму. При этом происходит не просто линейная аппроксимация, а плавное изменение положения опорных точек объекта в соответствии с заданными условиями. Эти условия определяются иерархией объектов (т. е. законами их взаимодействия между собой), разрешенными плоскостями движения, предельными углами поворотов, величинами ускорений и скоростей.

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

Метод трехмерного геометрического моделирования реализован во многих программных продуктах, в том числе таких популярных, как AutoCAD и ArchiCAD.

Трехмерная графика

Наименование параметра Значение
Тема статьи: Трехмерная графика
Рубрика (тематическая категория) Технологии

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

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

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

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

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

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

Технология трехмерного моделирования состоит в следующем:

· проектирование и создание виртуального каркаса (ʼʼскелœетаʼʼ) объекта͵ наиболее полно соответствующего его реальной форме;

· проектирование и создание виртуальных материалов, по физическим свойствам визуализации похожим на реальные;

· присвоение материалов различным частям поверхности объекта (проектирование текстуры на объект);

· настройка физических параметров пространства, в котором будет действовать объект, - задать освещение, гравитацию, свойства атмосферы, свойства взаимодействующих объектов и поверхностей, задание траектории движения объектов;

· расчет результирующей последовательности кадров;

· наложение поверхностных эффектов на итоговый анимационный ролик.

Модель. Для изображения трехмерных объектов на экране монитора требуется проведение серии процессов (обычно называемых конвейром) с последующей трансляцией результата в двумерный вид. Первоначально объект представляется в виде набора точек, или координат, в трехмерном пространстве. Трехмерная система координат определяется тремя осями: горизонтальной, вертикальной и глубины, обычно называемых, соответственно, осями X, Y и Z. Объектом должна быть дом, человек, машина, самолет или целый 3D мир и координаты определяют положение вершин (узловых точек), из которых состоит объект, в пространстве. Соединив вершины объекта линиями мы получим каркасную модель, называемую так из-за того, что видимыми являются только края поверхностей трехмерного тела. Каркасная модель определяет области, составляющие поверхности объекта͵ которые бывают заполнены цветом, текстурами и освещаться лучами света.

Разновидности 3D-графики. Существуют следующие разновидности 3D-графики: полигональная, аналитическая, фрактальная, сплайновая.

Полигональная графика является наиболее распространенной. Это объясняется прежде всœего высокой скоростью ее обработки. Любой объект полигональной графики задается набором полигонов. Полигон - ϶ᴛᴏ плоский многоугольник. Простейшим вариантом являются треуголные полигоны, ибо, как известно, через любые три точки в пространстве можно провести плоскость. Каждый полигон задается набором точек. Точка задается тремя координатами – X, Y, Z. Таким образом можно задать 3-мерный объект как массив или структуру.

Аналитическая графика состоит по сути в том, что объекты задаются аналитически, т. е. формулами. К примеру: шар радиуса r с центром в точке (x 0 , y 0 , z 0) описывается формулой (x-x 0) 2 + (y-y 0) 2 + (z-z 0) 2 = r 2 . Комбинируя различные формулы друг с другом, можно получить объекты сложной формы. Но вся сложность состоит в нахождении формулы требуемого объекта.

Другой способ создания аналитических объектов - ϶ᴛᴏ создание тел вращения. Так, вращая круг вокруг некоторой оси, можно получить тор, а вращая одновременно сильно вытянутый эллипс вокруг собственной и внешней осœей, можно получить достаточно красивый рифленый тор.

Фрактальная графика основана на понятии фрактала - самоподобия. Объект называют самоподобным, когда увеличенные части объекта походят на сам объект и друг на друга. К ʼʼсамоподобномуʼʼ классу относится местность. Так зазубренный край сломанного камня похож на горный хребет на горизонте. Фрактальная графика, как и векторная, основана на математических вычислениях. Базовым элементом фрактальной графики является математическая формула, в связи с этим никаких объектов в памяти компьютера не хранится и изображение строится исключительно по уравнениям.

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

Сплайновая графика основана на понятии сплайна. Термин ʼʼсплайнʼʼ от английского spline. Так принято называть гибкая полоска стали, при помощи которой чертежники проводят через заданные точки плавные кривые. В былые времена подобный способ плавных обводов различных тел (корпус корабля, кузов автомобиля) был широко распространен в практике машиностроения. В результате форма тела задавалась при помощи набора очень точно изготовленных сечений-плазов. Появление компьютеров позволило перейти от этого, плазово-шаблонного, метода к более эффективному способу задания поверхности обтекаемого тела. В корне этого подхода к описанию поверхностей лежит использование сравнительно несложных формул, позволяющих воспроизводить облик изделия с крайне важно й точностью.

При моделировании сплайнами чаще всœего применяется метод бикубических рациональных B-сплайнов на неравномерной сетке (NURBS). Вид поверхности при этом определяется расположенной в пространстве сеткой опорных точек. Каждой точке присваивается коэффициент, величина которого определяет степень ее влияния на часть поверхности, проходящей вблизи точки. От взаимного расположения точек и величины коэффициентов зависит форма и ʼʼгладкостьʼʼ поверхности.

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

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

· Bouknight – поверхность с диффузным отражением без бликов (к примеру матовый пластик);

· Phong – поверхность со структурированными микроповерхностями (к примеру, металлические);

· Blinn – поверхность со специальным распределœением микронеровностей с учетом взаимных перекрытий (к примеру, глянец);

· Whitted – модель, позволяющая дополнительно учитывать поляризацию света;

· Hall – модель, позволяющая корректировать направления отражения и параметры преломления света.

Закраска поверхностей осуществляется методами Гуро (gouraud) или Фонга (Phong). В первом случае цвет примитива рассчитывается в его вершинах, а затем линœейно интерполируется по поверхности. Во втором случае строится нормаль к объекту в целом, ее вектор интерполируется по поверхности составляющих примитивов и освещение рассчитывается для каждой точки.

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

· Свет, пришедший с обратной стороны поверхности, т. е. преломленный свет (Refracted);

· Свет, равномерно рассеиваемый поверхностью (Diffuse);

· Зеркально отраженный свет (Reflected);

· Блики, т. е. отраженный свет источников (Specular);

· Собственное свечение поверхности (Self Illumination).

Свойства поверхности описываются в создаваемых массивах текстур (двух или трехмерных). Τᴀᴋᴎᴍ ᴏϬᴩᴀᴈᴏᴍ, в массиве содержатся данные о степени прозрачности материала; коэффициенте преломления; коэффициентах смещения компонентов (их список указан выше); цвете в каждой точке, цвете блика, его ширинœе и резкости; цвете рассеянного (фонового) освещения; локальных отклонениях векторов от нормали (т. е. учитывается шероховатость поверхности).

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

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

· Растворенный свет (Ambitnt Light), являющийся аналогом равномерного светового фона. Он не имеет геометрических параметров и характеризуется только цветом и интенсивностью.

· Удаленный не точечный источник называют удаленным светом (Distant Light). Ему присваивают конкретные параметры (координаты). Аналог в природе – Солнце.

· Точечный источник света (Point Light Source) равномерно испускает свет во всœех направлениях и также имеет координаты. Аналог в технике – электрическая лампочка.

· Направленный источник света (Direct Light Source) кроме местоположения характеризуется направлением светового потока, углами раствора полного конуса света и его наиболее яркого пятна. Аналог в технике – прожектор.

Процесс расчета реалистичных изображений называют ренедерингом (визуализацией). Большинство современных программ рендеринга основаны на методе обратной трассировки лучей. Его суть состоит в следующем:

· Из точки наблюдения сцены посылается в пространство виртуальный луч по траектории которого должно прийти изображение в точку наблюдения.

· Для определœения параметров приходящего луча всœе объекты сцены проверяются на пересечение с траекторией наблюдения. В случае если пресечения не происходит, то считается, что луч попал в фон сцены и приходящая информация определяется параметрами фона. В случае если траектория пересекается с объектом, то в точке сопорикосновения рассчитывается свет, уходящий в точку наблюдения в соответствии с параметрами материала.

После завершения конструирования и визуализации объекта приступают к его ʼʼоживлениюʼʼ, т. е. заданию параметров движения. Компьютерная анимация базируется на ключевых кадрах. В первом кадре объект выставляется в исходное положение. Через определœенный промежуток (к примеру, в восьмом кадре) задается новое положение объекта и так далее до конечного положения. Промежуточные положения вычисляет программа по специальному алгоритму. При этом происходит не просто линœейная аппроксимация, а плавное изменение положения опорных точек объекта в соответствии с заданными условиями. Эти условия определяются иерархией объектов (т. е. законами их взаимодействия между собой), разрешенными плоскостями движения, предельными углами поворотов, величинами ускорений и скоростей.

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

Метод трехмерного геометрического моделирования реализован во многих программных продуктах, в т.ч. таких популярных, как AutoCAD и ArchiCAD.

Трехмерная графика - понятие и виды. Классификация и особенности категории "Трехмерная графика" 2017, 2018.

К геометрическим объектам КГ относятся:

  • а) точка, отрезок, прямая, плоскость;
  • б) кривые линии (плоские и пространственные);
  • в) многогранники;
  • г) поверхности: линейчатые и криволинейные;
  • д) элементарные геометрические тела (объёмные примитивы): параллелепипед, конус, цилиндр и т.д.;
  • е) составные геометрические объекты, полученные из объёмных примитивов с использованием операций геометрического синтеза: соединение, пересечение, разность, дополнение;
  • ж) объёмные фигуры произвольной формы.

Для отражения разнообразных свойств геометрических объектов КГ применяют различные геометрические модели: аналитические, рецепторные, структурные, кинематические, составные.

Аналитические модели геометрических объектов трёхмерной КГ

В КГ принято, что ось Z направлена перпендикулярно плоскости экрана, а оси x и y лежат в плоскости экрана.

При описании геометрических объектов возможны два подхода:

точное аналитическое описание объектов;

описание объектов приближенными методами: интерполяции и аппроксимации.

Формы задания прямой в пространстве. В аналитической геометрии прямая, проходящая через точку в заданном направлении, определяется уравнением (рис. 11,а).

где r1 - радиус - вектор заданной точки на прямой; a - единичный вектор, задающий направление; t - параметр.

Пример 4. Прямая, проходящая через точку (1, 2, 3) и в направлении (1/, -1/, 1/), определяется соотношением

Координаты точек этой прямой определяются

x = 1+, y = 2 - , z = 3+,

Если прямая проходит через две точки Р1 Р2, то для произвольной точки пространства Р (рис.11,б) запишем уравнение

Отсюда r = r1+t(r2 - r1),

и в конечном итоге r = (1- t)r1+tr2. (20)

Рис. 11. Различные способы задания прямой

X = (1- t) + 5t =1 + 4t;

Y = 2(1- t) + 6t =2 + 4t;

Z = 3(1- t) + 7t =3 + 4t

Формы задания плоскости. Уравнение вида

Ax + By + Cz + 0 = 0,

где A, B, C не равны нулю одновременно, определяет плоскость.

Плоскость, проходящая через точки A, B, C, заданные радиусами-векторами a, b, c, (рис.12) определяется уравнением

r = a+ u(b-a) + х(c-a),

где u, х - параметры.


Рис. 12.

Формы задания кривых. В объемной КГ применяются плоские и пространственные кривые. Плоские кривые рассматриваются как граничные кривые отсека поверхности. Формы задания плоских кривых рассмотрены в 2.1.3 и 2.1.4. Пространственную кривую в трёхмерном пространстве можно получить как линию пересечения двух поверхностей или как траекторию движущейся точки. В КГ предпочтительней второй вариант.

Параметрическое задание пространственной кривой имеет вид

где функции x(u), y(u), z(u) - непрерывные на отрезке .

Формы задания многогранников. Многогранником называют геометрическую фигуру трёхмерного пространства, поверхность которой состоит из конечного числа плоских многоугольников. Многоугольники называются гранями многогранника. Примеры многогранников: куб, пирамида, прямоугольный параллелепипед, призма.

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

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

Второй вариант - полигональная модель - задаёт многогранник как набор граней (многоугольников): каждый многоугольник представлен набором вершин с соответствующими координатами в локальной системе координат. В этом случае легко определить видимость граней (рис.13, б).

Рис. 13. Представление многогранника

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

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

Простейшим средством интерполирования в трехмерном случае является треугольник, заданный тремя точками: Р1, Р2, Р3. Поверхность треугольника, вершины которого находятся в указанных точках, определяется уравнением

Из уравнения (21) следует, что T(1,0) = P1; T(0,1)=P2; T(0,0) = P3.

Кроме того, T(u,0) - прямая, соединяющая точки: P1и P2, T(0,) - прямая, соединяющая точки P2 и P3; T(u,1-u) - прямая, соединяющая точки P1 и P2 (рис.14). Следовательно, уравнение (19) определяет плоскость, проходящую через точки P1, P2 ,P3.

Рис. 14.

Такой способ интерполяции поверхности треугольниками получил название триангуляции.

Пример 6. Рассмотрим точки P1(1,0,0), P2(0,1,0) и P3(0,0,1). Координаты x, y, z каждой точки плоскости определяются следующими выражениями:

z (u,) = 1-u- или

Более сложным является случай интерполяции, когда отсек поверхности задаётся четырьмя точками: P1, P2 ,P3, P4 (рис.15).

Рис.15.

Поверхность Т(u,) определяется уравнением

T(u,) = P1(1-u)(1-)+ P2(1-u) +P3u(1-) + P4u. (22)

Если четыре точки компланарны, то Т(u,) представляет плоский четырёх угольник, в противном случае - поверхность второго порядка.

Пример 7. Рассмотрим точки P1(0,0,0), P2(0,1,0), P3(1,0,0), P4(1,1,1). Координаты каждой точки интерполяционной поверхности определяются уравнениями, получаемыми подстановкой координат в (22)

x (u,) = u, y (u,) = , z (u,) = u, или

Если в уравнении прямой (20) заменить векторы r1 и r2 на P(0,) и P(1,) - уравнения пространственных кривых, то получим уравнение линейчатой поверхности. Такая поверхность образуется прямой, скользящей по двум кривым, называемым направляющими. Уравнение линейчатой поверхности (рис.16) определяется

T(u,) = (1-u)P(0,)+ uP(1,). (23)

Рис. 16.

Как обобщение интерполяции поверхности по четырем точкам можно рассматривать интерполяцию поверхности по методу С. Инаба, в котором заданы четыре точки и значения частных производных и в этих точках (рис.17).

Рис. 17.

Уравнение (24) имеет 16 коэффициентов. Для их определения даны координаты четырёх точек и значения частных производных и в каждой точке. Каждый угол, таким образом, даёт по три параметра. Недостающие четыре параметра даёт задание координат четырёх точек, лежащих внутри поверхности.

В 1960 году Кунсом был разработан метод интерполяции поверхности по четырем граничным кривым (рис.18).

Рис. 18.

Рассматривая кривые P(0,) и P(1,) как направляющие, можем записать в соответствии с (23) уравнение линейчатой поверхности:

T1(u,) = (1-u)P(0,)+uP(1,). (25)

Линейная интерполяция в -направлении даёт линейчатую поверхность

T2(u,) = (1-)P(u,0)+ P(u,1). (26)

Их сумма Т1+Т2 задаёт порцию поверхности, каждая из границ которой является суммой граничной кривой и отрезка, соединяющего концевые точки этой кривой. Это легко проверить: если подставить =0, то граница определяется не P(u,0), а выражением

T(u,0) + [(1-u)P(0,)+ uP(1,0)].

Следовательно, для получения поверхности интерполяции необходимо из суммы поверхностей Т1 и Т2 вычесть уравнение четырёх прямых, соединяющих концевые точки, аналогичных (22):

T(u,) = (1-u)P(0,)+uP(1,) +(1-)P(u,0)+ P(u,1) -

P(0,0)(1-u)(1-) -P(0,1)(1-u) - P(1,0)u (1-) - P(1,1)u. (27)

Последовательные подстановки u=0, u=1, =0, =1 подтверждают, что порция поверхности (27) имеет четыре заданные кривые своими границами.

Вспомогательные функции u; (1-u); ; (-1) называют функциями смещения, т.к. они соединяют воедино четыре отдельные граничные кривые. Можно обобщить формулу (27), если использовать вместо u(1-u), v(1-v) функции слияния (рис. 19).

Рис. 19.

Часто в КГ в качестве исходных данных для конструирования поверхности выступают не граничные кривые, а точки-ориентиры. Обобщая формы записи кривой Фергюсона (13) и кривой Безье (15) для n=3 получим соответственно уравнения поверхностей, допуская зависимость a0, a1, a2, a3 от второго параметра:

где - вершины характеристического многоугольника (рис.20).

Рис. 20.

Форма многогранника даёт хорошее представление о форме поверхности, и изменение одной или более точек ориентиров модифицирует её предсказуемым образом. Заметим, что поверхность Безье проходит только через точки

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


Рис. 21. Примеры поверхностей вращения

Если за ось вращения принять ось у, образующую обозначить f(u), то уравнение поверхности может быть записано (рис.22)

r(u,) = f(u)(cose1 + sine2) + ua0, (30)

где e1, e2 - единичные векторы, идущие вдоль осей z и х; a0 - единичный вектор в направлении оси вращения.

Если образующая задана уравнением

то из уравнения (30) при a0=1 получаем уравнение конической поверхности вращения (см. рис.21, а) в параметрическом виде:

r(u,) = u.

Рис. 22.

Представление объёмных примитивов. В КГ под объёмными примитивами (элементарными геометрическими телами) понимают тела: конус, цилиндр, сфера, параллелепипед, тор, пирамида, призма. Для того чтобы записать уравнение объёмного примитива, необходимо в уравнении поверхности вместо равенства перейти к неравенству. Например, уравнение

x2 + y2 +z2 = R2

есть уравнение сферы, а неравенство

задаёт объёмный примитив, также именуемый сферой.

Синтез составных геометрических объектов (СГО) из объёмных примитивов выполняется с использованием геометрических операций, аналогичных операциям над множествами. Цель геометрического синтеза -получение описания сложного объекта. К операциям геометрического синтеза относятся: объединение, пересечение, разность, дополнение. На рис.23 показаны примеры операций геометрического синтеза.

Для реализации этих операций используются методы контактного соединения и соединения с проникновением.

Метод контактного соединения используется для синтеза объектов из элементарных ГО, соединение которых осуществляется по плоским контурам. Примером контактного соединения будет объединение объектов, изображенное на рис.23, б.

Метод соединения с проникновением предполагает следующую последовательность шагов:

  • а) определение объёмных примитивов V1 и V2;
  • б) определение пар потенциально пересекающихся поверхностей;
  • в) аналитическое определение кривой пересечения для любой пары пересекающихся поверхностей и удаление тех сегментов кривой, которые не лежат внутри пересекающихся поверхностей;
  • г) сегментация поверхностей в соответствии с полученной линией пересечения;
  • д) удаление сегментов поверхностей.

Рис. 23.

Представление объёмных фигур произвольной формы. Для их представления используется кинематический принцип. Можно задать сплошные объёмные фигуры несколькими способами.

Задание толщиной: S = F1(C, P, D, L). Опорный контур С перемещается в плоскости Р (по умолчанию это плоскость z = 0); второй контур определяется переносом контура С по направлению вектора D на расстояние L.

Задание вращением: S = F2(C, A). С помощью контура С (разомкнутого или замкнутого) образуется сплошное тело вращением вокруг оси А.

Задание списком контуров: S = F3(LC, LP, LR, LS), где LP(i) - плоскость, в которой лежит LC(i) - контур, LR(i) - первый из соединяемых объектов, LS(i) - направление обхода контура.

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

Трёхмерная графика не обязательно включает в себя проецирование на плоскость.....

Энциклопедичный YouTube

    1 / 5

    ✪ Теория 3D Графики, урок 01 - Введение в 3D Графику

    ✪ Компьютерная графика в кино

    ✪ Лекция 1 | Компьютерная графика | Виталий Галинский | Лекториум

    ✪ 12 - Компьютерная графика. Основные понятия компьютерной графики

    ✪ Лекция 4 | Компьютерная графика | Виталий Галинский | Лекториум

    Субтитры

Применение

Трёхмерная графика активно применяется для создания изображений на плоскости экрана или листа печатной продукции в науке и промышленности , например, в системах автоматизации проектных работ (САПР; для создания твердотельных элементов: зданий, деталей машин, механизмов), архитектурной визуализации (сюда относится и так называемая «виртуальная археология »), в современных системах медицинской визуализации .

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

Трёхмерная графика обычно имеет дело с виртуальным , воображаемым трёхмерным пространством, которое отображается на плоской, двухмерной поверхности дисплея или листа бумаги. В настоящее время известно несколько способов отображения трёхмерной информации в объемном виде, хотя большинство из них представляет объёмные характеристики весьма условно, поскольку работают со стереоизображением. Из этой области можно отметить стереоочки, виртуальные шлемы, 3D-дисплеи, способные демонстрировать трёхмерное изображение. Несколько производителей продемонстрировали готовые к серийному производству трёхмерные дисплеи . Однако и 3D-дисплеи по-прежнему не позволяют создавать полноценной физической, осязаемой копии математической модели, создаваемой методами трёхмерной графики. Развивающиеся с 1990-х годов технологии быстрого прототипирования ликвидируют этот пробел. Следует заметить, что в технологиях быстрого прототипирования используется представление математической модели объекта в виде твердого тела (воксельная модель).

Создание

Для получения трёхмерного изображения на плоскости требуются следующие шаги:

  • моделирование - создание трёхмерной математической модели сцены и объектов в ней;
  • текстурирование - назначение поверхностям моделей растровых или процедурных текстур (подразумевает также настройку свойств материалов - прозрачность, отражения, шероховатость и пр.);
  • освещение - установка и настройка ;
  • анимация (в некоторых случаях) - придание движения объектам;
  • динамическая симуляция (в некоторых случаях) - автоматический расчёт взаимодействия частиц, твёрдых/мягких тел и пр. с моделируемыми силами гравитации , ветра , выталкивания и др., а также друг с другом;
  • рендеринг (визуализация) - построение проекции в соответствии с выбранной физической моделью;
  • композитинг (компоновка) - доработка изображения;
  • вывод полученного изображения на устройство вывода - дисплей или специальный принтер.

Моделирование

Наиболее популярными пакетами сугубо для моделирования являются:

  • Robert McNeel & Assoc. Rhinoceros 3D ;

Для создания трёхмерной модели человека или существа может быть использована как прообраз (в большинстве случаев) Скульптура .

Текстурирование

SketchUp

Визуализация трёхмерной графики в играх и прикладных программах

Есть ряд программных библиотек для визуализации трёхмерной графики в прикладных программах - DirectX, OpenGL и так далее.

Есть ряд подходов по представлению 3D-графики в играх - полное 3D, псевдо-3D.

Такие пакеты даже не всегда дают пользователю оперировать 3D-моделью напрямую, например, есть пакет OpenSCAD , модель в котором формируется выполнением формируемого пользователем скрипта, написанного на специализированном языке.

Трёхмерные дисплеи

Трёхмерные, или стереоскопические дисплеи , (3D displays, 3D screens) - дисплеи, посредством стереоскопического или какого-либо другого эффекта создающие иллюзию реального объёма у демонстрируемых изображений.

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

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

В общем случае реально существующий объект не может, конечно, в точности соответствовать своему описанию. Для этого бы потребовалось бесконечное число троек координат (x, y, z ) – по одной для каждой точки поверхности объекта.

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

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

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

Каркасное представление объекта часто используется не при моделировании, а при отображении моделей как метод визуализации.

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

Рис. 7.1. Одна и та же каркасная модель (а) может описывать и куб (б), и открытую сверху коробку (в).

Развитием каркасной модели является кусочно-аналитическая граневая модель , которая задается перечислением всех отдельных граней. Объект задается множеством ограничивающих его граней и нормалью, направленной из объекта; каждая грань задается циклом ограничивающих ее ребер; каждое ребро – двойкой ограничивающих его точек (вершин); каждая точка – тройкой координат в трехмерном пространстве. Т.е. граневая модель представляет трехмерный объект в виде замкнутой поверхности.

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

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

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

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

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

· размерные параметры – определяют геометрические размеры примитива;

· параметры положения – устанавливают положение и ориентацию примитива относительно мировой системы координат.

В качестве примитивов используются простые геометрические тела: цилиндр, конус, усеченный конус, параллелепипед, шар, тор.

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

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

Недостатком объемно-параметрической модели является отсутствие явных границ отсеков граней в случае взаимопроникновения примитивов.

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

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

Для моделирования элементов сложной формы можно использовать изменение размеров контура или его положения относительно траектории во время движения.

Достоинством модели является практическое отсутствие ограничений на сложность формируемого объекта. К недостаткам относится сложность задания элементов.