Смекни!
smekni.com

Методические указания по выполнению курсовой работы по дисциплине «машинная графика» Москва 1995 (стр. 1 из 9)

ГОСУДАРСТВЕННЫЙ КОМИТЕТ РОССИЙСКОЙ ФЕДЕРАЦИИ ПО ВЫСШЕМУ ОБРАЗОВАНИЮ

МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

С.М.АВДЕЕВА, А.В.КУРОВ

МЕТОДИЧЕСКИЕ УКАЗАНИЯ ПО ВЫПОЛНЕНИЮ КУРСОВОЙ РАБОТЫ ПО ДИСЦИПЛИНЕ «МАШИННАЯ ГРАФИКА»

Москва 1995


ОГЛАВЛЕНИЕ


Стр.


1. Содержание курсовой работы

2. Требования к оформлению курсовой работы

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

4. Список рекомендуемых тем курсовых работ

Список литературы, используемой при выполнении

курсовой работы

6. Алгоритмы машинной графики, используемые при вы­
полнении курсовой работы

6.1. Алгоритм Робертса

6.2. Алгоритм Варнока

6.3. Алгоритм Вейлера-Азертона

6.4. Алгоритм, использующий список приоритетов . .

6.5. Алгоритм, использующий 2-буфер

6.6. Алгоритм построчного сканирования

6.7. Алгоритм определения видимых поверхностей
путем трассировки лучей

6.8. Алгоритм создания реалистических изображений.

1. СОДЕРЖАНИЕ КУРСОВОЙ РАБОТЫ

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

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

Курсовая работа должна быть посвящена разработке закончен­ного программного продукта, позволяющего моделировать трехмер­ные и/или реалистические изображения на экране дисплея. Такая направленность работы связана с тем, что алгоритмы нижнего уровня студенты достаточно глубоко и всесторонне изучают в ходе теоретических и практических занятий в течение предыдущего се­местра. Алгоритмы верхнего уровня (предназначенные для изобра­жения трехмерных и реалистических об»ектов) достаточно громозд­ки, программы, их реализующие, об»емны, что практически делает невозможным их разработку и отладку в ходе лабораторных работ.

В ходе выполнения курсовой работы студенты решают задачи, связанные с обоснованием и разработкой новых или модификацией

-2-

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

На защиту должны быть представлены: комплекс программ, расчетно-пояснительная записка и графическая часть.

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

Расчетно-пояснительная записка должна иметь об»ем 30-40 листов рукописного (или машинописного) текста на листах формата А4. Записка должна содержать следующие разделы:

1)Введение

2)Конструкторский

3)Технологический

4)Экспериментально-исследовательский

5)3аключение

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

Во введении дается обзор и анализ существующих программных систем в выбранном направлении, обосновывается необходимость разработки нового комплекса программ. Здесь же проводится ана­лиз и краткое описание с указанием их характеристик известных алгоритмов решения стоящей задачи. Об»ем введения 3-5 листов.

-3-

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

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

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

На основе выбранных данных для представления об»ектов сту­дент осуществляет последующий выбор и обоснование используемых типов и структур для их машинного представления. При их выборе следует исходить из возможностей языка программирования для их представления, затрат памяти на хранение, времени на обработку,

-4-

размерности данных.

Выбор исходных данных и формы их представления должен увя­зываться с такой характеристикой, как их об»ем и удобства поль­зователя при вводе. В частности, ввод большого количества дан­ных утомляет пользователя и увеличивает вероятность ввода ошибочных данных. В данной части записки могут выполняться рас­четы для определения об»емов памяти, необходимой для хранения исходных данных, промежуточных и окончательных результатов, а также расчеты, позволяющие оценить время решения задачи на ЭВМ. Результаты таких расчетов должны использоваться при сравнении альтернативных вариантов алгоритмов, а также оценки возможности практической реализации стоящей задачи на имеющейся технической базе. Об»ем конструкторской части должен составлять 35-55% все­го об»ема записки.

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

Данный раздел должен заканчиваться изложением руководства программиста, в котором излагаются требования к аппаратным средствам и программному обеспечению ЭВМ, а также излагается порядок работы с комплексом программ. Эта часть оформляется в соответствии с ГОСТ 19.504-79 и она должна содержать следующие разделы:

-назначение и условия применения программы;

-характеристики программы;

-обращение к программе;

-входные и выходные данные;

-сообщения.

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

В разделе «Характеристики программы» приводится описание основных характеристик и особенностей программы (временные, режим работы, средства контроля правильности выполнения и са­мовосстановления программы).

В разделе «Обращение к программе» должно быть приведено описание процедур вызова программы (способы передачи управле­ния и параметров данных).

В разделе « Выходные данные» должно быть приведено описа­ние используемой входной и выходной информации.

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

-6-

В приложениях к руководству программиста могут приводиться дополнительные материалы (примеры, иллюстрации, таблицы, графи­ки).

Технологический раздел должен содержать разработанные тес­ты для проверки правильности работы комплекса программ, резуль­таты тестирования на тестовых примерах. Об»ем этой части работы составляет 35-40%.

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