Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
3) Конспект лекций по компьютерной графике.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
359.42 Кб
Скачать

Понятие графических объектов и их параметров.

Если вы создаете объект-примитив, например сферу, то вызывается функция, которая запрашивает у вас набор данных, характеризующих сферический объект. Запишем эту функцию в следующем виде:

СФЕРА (О, R, n, m, М), (1)

где СФЕРА – название функции (в данном случае название графического объекта); О, R, n, m, М – набор данных о сфере: О – координаты центра сферы, R – радиус сферы, n - число продольных сегментов при построении сеточной графической модели (вдоль параллелей как на рис. 1); m - число поперечных сегментов при построении сеточной графической модели (вдоль меридиан); М – материал сферы.

В графических системах, основанных на преобладающих в настоящее время принципах объектно-ориентированной теории, данные (О, R, n, m, М) и соответствующая этим данным функция СФЕРА укомплектованы в блок, называемый объектом. Проектируемое изделие может состоять из набора объектов. Данные (О, R, n, m, М) называют в различных графических программах по-разному: атрибутами, свойствами, параметрами. В дальнейшем будем применять термин параметры.

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

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

В ряде случаев можно изменить тип объекта и соответственно поменять число и тип параметрических данных. Это происходит, когда сферу преобразуют в редактируемую сеть, например, в деталь типа «Рукоятка» сужением нижней части сферы, т.е. перемещением узлов в нижней части сеточной модели бывшей сферы. Функция СФЕРА (О, R, n, m, М) в этом случае перестает быть сферой и преобразуется в функцию СЕТЬ(n; m; ­­x1,y1,z1; … ­­xn,yn,zn; … xnm,ynm,znm; M), где ­­x1,y1,z1; … ­­xn,yn,zn; … xnm,ynm,znm – координаты каждой точки сети.

На рис. 2 для примера представлена сеть с одинаковыми значениями m и n, равными 4. Сеть имеет 16 вершин, со следующими координатами:

Вершина(0,0): 70,260

Вершина(0,1): 70,140

В ершина(0,2): 120,165,50

Вершина(0,3): 120,245,50

Вершина(1,0): 170,260

Вершина(1,1): 170,140

Вершина(1,2): 220,165,50

Вершина(1,3): 220,245,50

Вершина(2,0): 250,260

Вершина(2,1): 250,140

Вершина(2,2): 300,165,50

Вершина(2,3): 300,245,50

Вершина(3,0): 350,260

Вершина(3,1): 350,140

Вершина(3,2): 400,165,50

Вершина(3,3): 400,245,50

Графические языки

Рассмотрим, как работает конструктор с графическим редактором:

  • конструктор определяет характер очередного действия;

  • конструктор вводит соответствующую команду в ЭВМ;

  • графическая программа интерпретирует эту команду, т.е. разворачивает ее в последовательность команд процессора ЭВМ;

  • затем эта последовательность команд выполняется;

  • результат выполнения отображается на экране.

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

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

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

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

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

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

Такие возможности характерны для любого языка программирования. К ним относятся:

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

  • компактная запись повторяющихся последовательностей действий - циклов;

  • ввод данных пользователем в процессе выполнения программы (для сценария ввод данных должен осуществляться перед запуском сценария), а также вывод сообщений из программы;

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

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

Н а рис. 3 для примера приведена геометрическая модель объекта (назовем изделие «Подставка») с формальными значениями параметров – D, D1, L …, предназначенная для формирования конкретной геометрической модели объекта с числовыми геометрическими параметрами.

Н а рис. 4 представлены некоторые из таких полученных объектов. Все они принадлежат целому классу геометрических объектов, названных «Подставка».

Формирование таких геометрических моделей может производиться как с помощью сценария, так и с помощью программирования.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]