на тему рефераты Информационно-образоательный портал
Рефераты, курсовые, дипломы, научные работы,
на тему рефераты
на тему рефераты
МЕНЮ|
на тему рефераты
поиск
Программирование математических объектов
p align="left">2.2 Обучение работе с программным продуктом

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

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

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

Рисунок 1

Рисунок 2

После того, как объект спроецирован на плоскости проекций нужно нажать кнопку "Просмотр", находящуюся на форме (рис. 2), чтобы посмотреть на объемный объект в перспективе, и получить возможность сохранить документ. Если объект создан, но не была нажата клавиша "Просмотр", то после выбора опции "Сохранить как" информация не будет сохранена. После нажатия клавиши "Просмотр" появится однотонное окно чёрного цвета в котором будет находиться трёхмерный объект, на который можно посмотреть со всех сторон, вращая вокруг осей X,Y,Z нажатиями соответствующих клавиш "X", "Y", "Z", причем не имеет значения заглавная клавиша или нет. Просмотрев результат создания объекта, можно его достроить, нажав на форме кнопку "Добавить". После нажатия этой кнопки снова появится окно с тремя плоскостями проекций, в котором будут находиться проекции объекта и к которым можно добавить новые проекции. Следует заметить, что вращение трёхмерного объекта в перспективе фактически не приводит к изменению его положения в пространстве. То есть если после вращения объекта перейти к плоскостям проекций, картина не изменится, и после перехода обратно к перспективе объект будет находиться в исходном положении: его положение в перспективе будет соответствовать его проекциям на плоскостях проекций.

Добавление примитива: "Куб", осуществляется путём чертежа линии на одной из плоскости проекций, причём, если мысленно представить проекции этой линии на абсциссу и ординату, то стороной куба будет меньшая из проекций.

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

В программном продукте действительны такие функциональные клавиши:

Esc - выход из программы в операционную систему;

F1 - справка о программном продукте;

F9 - режим просмотра ;

X - вращение объекта вокруг оси X;

Y - вращение объекта вокруг оси Y;

Z - вращение объекта вокруг оси Z;

В программном продукте есть такие пункты меню "Файл", "Вид", "Помощь".

В пункте меню "Файл", содержатся опции для работы с файлами. Выбрав опцию "Создать", создаётся новая форма для создания объекта. Если изменить длину или ширину формы и выбрать опцию "Создать", то рабочее окно примет размеры, соответствующие новым размерам формы. Причём длина и ширина будут в любом случае одинаковы.

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

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

Опция "Выход" предназначена для выхода из программы в операционную систему.

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

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

2.3 Ограничения применения

В программе желательно использовать 16 битный режим, причём разрешение графического режима, выраженное в пикселях, не имеет значения. Допускаются только 8 битные, 16 битные и 32 битные графические режимы. Во всех остальных режимах, например, 2 битных, 4 битных, 24 битных программа работать не будет.

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

При загрузке трёхмерного объекта из файла не обязательно указывать разширение файла, или если уж оно указано, то должно содержать не менее трёх символов после точки. Это объясняется тем, что программа сохраняет объект в двух файлах. Один с разширением "Res", а другой "Dat". При этом не важно какое разширение укажет пользователь, оно всё равно отбрасывается программой.

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

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

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

3. Нереализованные возможности

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

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

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

Текстуры бывают: аффинные, точные (перспективно - корректные), параболические. Текстуры можно накладывать на все трёхмерные объекты.

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

4. Основная форма

Основная форма содержит такие компоненты как:

Main Menu - Предназначен для добавления к главной программе главного меню. Является компонентом Standart. Компонент Main Menu не визуальный компонент. Редактор меню вызывается после выбора опции Items. В редакторе можно создавать пункты меню проименовывая их с помощь свойства Caption. Переходя от одной компоненте к другой можно с помощью того же свойства Caption отредактировать пункты меню. Чтобы вставить линию разделитель нужно в свойстве Caption первой позицией указать символ "-" (дефис). После окончания создания пунктов меню редактор меню надо закрыть.

BitBtn - Этот компонент предназначен для создания кнопки с картинкой. В системе имеется набор готовых шаблонов.

После размещения объекта на форме изображение, помещаемое на кнопку, задаётся в свойстве Glyph (Значок). При этом вызывается редактор, с помощью которого выбирается нужная картинка (в формате BMP). Каждая такая картинка может состоять из 4 частей, равных по ширине. Первая часть - изображение кнопки в обычном состоянии, вторая - изображение "отключённой" кнопки, третья - изображение кнопки после щелчка мыши, изображение на нажатой кнопке. Число составных частей задаётся в свойстве NumGlyph (от 1 до 4). Расстояние от картинки до границ кнопки (в пикселях) можно указать в свойстве Margin. В свойстве Kind задаётся реакция кнопки на щелчок.

Button - Компонент предназначен для создания кнопок на форме и обработки события нажатия кнопки. Расположен на панели Standart. Имя кнопки указывается в поле Name, а выводимый текст на кнопке в свойстве Caption.

Combo Box - Компонент Поле со списком. Представляет собой вариант списка, с присоединённым дополнительным полем, в котором отображается выбранный элемент списка. Это же поле может использоваться для ввода новых элементов или для быстрого поиска элементов по начальным символам. Если на экране отображается только присоединённое поле ("раскрывающийся список"), то для раскрытия списка можно использовать клавиатурную комбинацию Alt+Вниз.

Open Dialog - Компонент предназначен для выбора файла с целью последующего открытия; Свойства класса TOpenDialog приведены в табл. 1

Таблица 1 - Свойства класса TOpenDialog

Свойство

Назначение

DefaultExt

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

FileName

Выбранное пользователем имя файла вместе с полным путём поиска

Files

Список выбранных имён файлов. В свойстве Options должен быть включён флажок ofAllowMultiSelect

Filter

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

FilterIndex

Номер текущей маски. Нумерация начинается с 1

HistoryList

Список ранее выбранных файлов (тип Strings)

InitialDir

Текущий каталог, содержимое которого отображается при первом открытии диалогового окна

Options

Набор флажков, определяющих окна выбора файлов.

Title

Заголовок диалогового окна

Save Dialog - Этот компонент практически ничем не отличается от компонента Open Dialog за исключением нескольких настроек, специфичных для процесса сохранения файла.

Страницы: 1, 2, 3, 4, 5



© 2003-2013
Рефераты бесплатно, курсовые, рефераты биология, большая бибилиотека рефератов, дипломы, научные работы, рефераты право, рефераты, рефераты скачать, рефераты литература, курсовые работы, реферат, доклады, рефераты медицина, рефераты на тему, сочинения, реферат бесплатно, рефераты авиация, рефераты психология, рефераты математика, рефераты кулинария, рефераты логистика, рефераты анатомия, рефераты маркетинг, рефераты релиния, рефераты социология, рефераты менеджемент.