Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основы ИС.doc
Скачиваний:
15
Добавлен:
17.02.2016
Размер:
1.95 Mб
Скачать
    1. Форма отчета: Сохраните проект со своей работой и покажите преподавателю.

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

    3. Вопросы к защите лабораторной работы

  1. Каково назначение имиджа GraphicSpace?

  2. Ограничено ли количество секторов в круговой двухмерной диаграмме?

  1. Лабораторная работа 7

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

    2. Цель: Краткое знакомство с трехмерной графикой в среде Stratum Computer.

    3. Общие сведения:

Трехмерные объекты существуют в рамках трехмерного пространства и могут быть визуализированы в специальном двухмерном объекте: проекции трехмерного пространства. Трехмерное пространство находится в двухмерном пространстве (записывается вместе с ним в файл). Визуализация трехмерных объектов осуществляется в проекции трехмерного пространства, большинство из параметров которой определяются выбранной в проекции камерой. Камера - это специальный графический объект, определяющий направление взгляда и координаты наблюдателя, а также и другие параметры, влияющие на отображение. Конструирование трехмерных объектов можно производить в программном продукте 3d Studio и импортировать их в Stratum. Простейшие трехмерные объекты можно создавать с Stratume, для этого следует в режиме редактирования трехмерного пространства нажать на кнопку с изображением соответствующего примитива.

Операции с графическими 3D объектами.

Имиджи операций (управления объектами) располагаются в библиотеке GRAPH3D.LIB. Во всех имиджах имеется переменная hSpace3d, задающая дескриптор (уникальный номер) трехмерного пространства. Эту переменную можно устанавливать либо по связи, либо определить ее в имидже уровнем выше.

Move3d – управление перемещением графического объекта

Resize3d – управление масштабом графического объекта

Rotate3d – управление вращением графического объекта

Данные имиджи во многом схожи и имеют одинаковые переменные HANDLE hSpace3d,hBase,hObject STRING ObjName,BaseName

Имя

Тип

Назначение

hSpace3d

HANDLE

Дескриптор трехмерного пространства. Если эта переменная не устанавливается по связи, то она берется из переменной имиджа уровнем выше.

hBase

HANDLE

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

hObject

HANDLE

Дескриптор управляемого объекта.

ObjName

STRING

Имя управляемого объекта.

BaseName

STRING

Имя объекта, в локальной системе координат которого происходят эволюции объекта.

Кроме этого имиджи имеют еще и специальные переменные.

Move3d

FLOAT x,y,z.

Координаты объекта. В момент старта имидж получает координаты 3d объекта и записывает их в эти переменные. В дальнейшем следит за их изменениями и соответственно перемещает 3d объект.

Resize3d

FLOAT x,y,z.

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

Rotate3d

FLOAT AxisX,AxisY,AxisZ,Angle,matrix.

matrix- номер матрицы, задающей ось поворота, значение этой равно 0, то матрица создается автоматически, используя значения переменных AxisX, AxisY, AxisZ.

AxisX, AxisY, AxisZ - координаты вектора, лежащего на оси поворота. Если ось поворота задается через значения этих переменных, то поворот возможен только вокруг оси, проходящей через начало координат. В противном случае координаты следует задавать непосредственно в матрице.

Angle - угол поворота. Имидж обеспечивает поворот объекта на этот угол