Математические основы машинной графики преподаватель А.А.Милосердов - файл n1.doc

Математические основы машинной графики преподаватель А.А.Милосердов
Скачать все файлы (330.5 kb.)

Доступные файлы (1):
n1.doc331kb.04.02.2014 07:47скачать

n1.doc

  1   2

Министерство общего и профессионального


образования России
Ивановский Государственный энергетический

университет
Кафедра конструирования и графики

Математические основы машинной

графики
Методические указания для заочного

и дистанционного обучения.

Иваново 1999

Составитель Е.П.МИЛОСЕРДОВ

Редактор А.В.НИКОНОРОВ


В указаниях излагаются сведения, необходимые для выполнения контрольных заданий по курсам «Основы машинной графики», « Математические основы машинной графики», в системе заочного и дистанционного обучения. Предназначено для студентов специальностей 2203 и 2204 и других, изучающих курсы машинной графики.


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

1.Методы машинной графики: основные понятия и

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

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

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

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

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

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

где:

- проекции вектора, направленного и начала координат к заданной точке пространства (плоскости) на оси координат, они же значения координат.

- базисные векторы, т. е. единичные векторы , направления которых совпадает с направлением осей .

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

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

Переход от прямоугольных координат к цилиндрическим полярным координатам и к сферическим полярным координатам осуществляется по формулам:


Цилиндрические координаты:



;
Z = Z

Сферические координаты:





;
В машинной графике в зависимости от назначения системы координат классифицируются следующим образом:

мировые координаты - это координаты точек реального геометрического объекта, в связанной с данным объектом системе координат .

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

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

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


2. Модели отображения объектов
Как уже отмечено, наглядное реалистическое изображение трёхмерного объекта на плоскости может быть получено при параллельном проецировании - аксонометрические проекции, либо центральном проецировании - перспективные проекции.

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




где X, Y , Z - мировые координаты точек объекта

A - компоненты линейного преобразования.

Для определения компонент линейного преобразования в плоские координаты модели будем считать, что объект расположен в левосторонней системе мировых координат при аксонометрическом проецировании которой на плоскость ось Х всегда изображается справа от начала, а ось У слева(рис 2.1). В этом случае направление оси Х каждой аксонометрической проекции совпадает с направлением оси U , что более удобно для расчета компонент и оценки правильности результатов расчета.


Z

Z

Y X X

Y


Рис 2.1

Значения компонент для различных видов аксонометрических проекций:
Прямоугольная изометрия:



Прямоугольная диметрия:







Фронтальная косоугольная диметрия:

Горизонтальная косоугольная изометрия:

Особо следует отметить широко распространённый вид отображения трёхмерного геометрического объекта как проекция с числовыми отметками. На плоскости проекций с числовыми отметками проекция поверхности задаётся в виде линий уровня. Такие изображения используются для отображения рельефа поверхности на географических картах, а также в компьютерной томографии. Для получения наглядного рельефного изображения геометрических объектов в этом случае используют как правило косоугольную горизонтальную изометрию ( или, как её ещё называют, «военную проекцию».Для построения каркасно-рёберной модели, которая аппроксимирует заданную поверхность в компьютерной томографии используют совокупность призматических поверхностей одинаковой , как правило небольшой , высоты. Линии уровня, описывающие поверхность, представляются в виде замкнутых ломаных линий, которые образуют основания призмы. Координаты точек вершин призматических поверхностей с некоторым округлением берутся непосредственно с чертежа, вершины верхних и нижних оснований призматических поверхностей отличаются только координатой Z. При отображении каркасно-рёберной модели целесообразно хранить координаты вершин в специальном файле , а построение ребер осуществлять заранее подготовленной процедурой параметрами которой являются номера точек вершин. При отображении модели в горизонтальной косоугольной изометрии для большей наглядности изображения целесообразно отображать вершины и рёбра модели с учётом видимости на аксонометрической проекции. Существует несколько различных методов определения видимости , но для рассматриваемого случая проецирования можно использовать простейший алгоритм:

а) Строится аксонометрическое изображение нижнего основания самой нижней призмы - для данной проекции его можно построить в координатах аксонометрической модели U и V задав для каждой вершины :





б) Строится изображение верхнего основания для каждой нижней призмы - координаты вершин определяются по соотношениям: Uiw = Ui , Viw = Yi + dh , где dh - разность высот уровней или высота призмы. Вершины верхнего и нижнего оснований соединяются боковыми ребрами, которые в данной аксонометрической проекции представляют собой отрезки вертикальных прямых. Для определения видимости при построении следует показывать как невидимые или совсем не показывать точки и ребра, проекции которых попадают в уже нарисованную грань верхнего основания призмы.

в) Строится нижнее основание второй призмы, соответствующей уровню dh. Координаты вершин определяются по соотношениям:



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

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

Z

X

Y


X:Y:Z = 1:1:1

Рис.2.2 Изображение каркасно-рёберной модели поверхности в горизонтальной изометрии
Чертежи строятся на листах бумаги формата А4 (210х297). Для построения аксонометрических проекций каркасно-рёберных моделей необходимо сначала выполнить чертежи осей проекций и привести значения коэффициентов искажений по каждой из осей. Чертежи осей выполняются в правом верхнем углу в соответствии с ГОСТ 2.317-69 ЕСКД. Чертежи заданных каркасно-реберных моделей выполняются карандашом в заданных размерах с учетом искажений по осям для заданной аксонометрической проекции: для горизонтальной косоугольной изометрии 1:1:1.

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

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

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



в) Рассчитать значения координат точек для вывода на устройство.

Для расчета координат устройства (графического дисплея) необходимо учесть изменение направления оси Y, обозначая Xu - число пикселов от левого края экрана, Yu - число пикселов от верхнего края экрана, X0 , Y0 - координаты ( в пикселах) точки начала координат:


значения Мх и Му связаны соотношением:

, где Мcorr в свою очередь определяется параметрами графического режима - разрешением экрана по Х и по У :



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

д) На аксонометрическом изображении воспроизводится изображение осей проекций и указываются коэффициенты искажения по осям.

Изображение осей выполняются в правом верхнем углу в соответствии с ГОСТ 2.317-69 ЕСКД. Для горизонтальной косоугольной изометрии коэффициенты искажений по всем трем осям одинаковы и принимаются равными X:Y:Z=1:1:1

Построение проекции в линейной перспективе выполняется методом центрального проецирования точек модели на картинную плоскость ( методом Дюрера)

  1. Построение перспективного изображения на картине (К) предполагает:

  1. Задание картинной плоскости К (рамы картины с основанием t-t)

  2. Задание плоскости основания (Т) и точки зрения (S).

  3. Изображаемый объект (А-а) располагается за картинной плоскостью.

  4. Проецирующий луч, соединяющий точку объекта (А) с точкой зрения (S), пересекает картинную плоскость (К) в точке (A’), при этом точка (А’) является перспективным изображением точки (А).

  5. Полученное изображение (A’a’) является перспективным изображением объекта (Аа).



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

    Т - предметная плоскость или плоскость оснований

    К - картинная плоскость , t - t -основание картины

    h - h -линия горизонта, P - главная точка картины (полюс картины)

    S - точка зрения,

    s - точка стояния

    A-a - объект или предмет

    A’-a’ - проекция объекта (изображение предмета)






























    Рис 2.3

    Проецирующий луч перпендикулярный картине отмечает полюс картины - P.

    Через полюс картины P проходит линия горизонта h-h.



A’



P

h h
a’
t t


Рис 2.4

Для перехода от двухкартинного комплексного чертежа к перспективному изображению используется метод проективных пучков. Чтобы построить перспективу точки A(A1,A2) необходимо:

  1. На двухкартинном комплексном чертеже задать раму картины (вертикальные стойки a и b; основания: верхнее q и нижнее t), а так же точку зрения S(S1,S2).

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

  3. Через точки A и S провести горизонтально-проецирующую плоскость a(a1), которая отмечает на верхнем и нижнем основании рамы точки 1(11,12) и 2(21,22).

  4. На основаниях картины перспективы отметить эти точки и соединить их линией (1-2).

  5. Через точки A и S провести фронтально-проецирующую плоскость b(b2) отмечающую на стойках рамы точки 3(31,32) и 4(41,42).

  6. На стойках картины перспективы отметить эти точки и соединить их линией (3-4).

  7. На картине перспективного изображения на пересечении линий 1-2 и 3-4 находится перспективное изображение точки А.

Этот метод универсален и не требует построения на картине полюса, линии горизонта и т.д. Метод позволяет масштабирование при переходе к перспективным проекциям.
  1   2
Учебный текст
© perviydoc.ru
При копировании укажите ссылку.
обратиться к администрации