46969 (Векторный графический редактор)

2016-07-30СтудИзба

Описание файла

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

Онлайн просмотр документа "46969"

Текст из документа "46969"

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

Калужский филиал

Факультет «ЭИУК»

Кафедра «ЭИУ-5»

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА К КУРСОВОЙ РАБОТЕ

Тема:

Векторный графический редактор”

Калуга, 2008 г.

  1. Оглавление

1. Введение

2. Техническое задание

2.1 Общие сведения

2.2 Назначение и цели создания системы

2.3 Требование к системе

2.4 Состав и содержание работ по созданию системы

3. Исследовательская часть

3.1 Постановка задачи

3.2 Обоснование выбора темы

3.3 Обоснование выбора способа решения

3.4 Обоснование выбора платформы

3.5 Обоснование выбора языка программирования

4. Конструкторская часть

4.1 Функциональное назначение

4.2 Руководство программиста

5. Технологическая часть

5.1 Назначение программы

5.2 Условия выполнения программы

5.3 Руководство пользователя

Заключение

Литература

  1. Введение

  2. Тема курсовой работы:

  3. Разработка векторного графического редактора.

  4. Задачи:

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

  6. Цели:

  1. Изучение среды программирования С++ Builder

  2. Изучение теоретических основ векторной графики

  3. Знакомство и использование алгоритмов преобразования пространства

  4. Приобретение навыков программирования на языке С++

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

  1. 2. Техническое задание

2.1 Общие сведения

2.1.1 Полное наименование системы

Программа для создания и преобразования изображений.

2.1.2 Перечень документов, на основании которых создается система

Основанием для разработки данной программы является курсовая работа по курсу «Программирование на языках высокого уровня». Разработка ведется на основании задания, утвержденного преподавателем.

2.1.3 Плановые сроки начала и окончания работы по созданию системы

Постановка задачи для курсовой работы по курсу “Программирования на языках высокого уровня” произведена 17.09.2008, окончание разработки программы и создания документации должно быть сделано не позже 8.12.2008.

2.1.4 Порядок оформления и предъявления заказчику результатов работ по созданию системы

Предъявление преподавателю результатов работ по созданию программного продукта включает следующие этапы:

  • постановка задачи

  • согласование и утверждение технического задания

  • разработка и согласование структуры программы

  • согласование и утверждение приложения

  • разработка пояснительной записки и графической части, указанных в задании

  • согласование и утверждение технического проекта.

2.2 Назначение и цели создания системы

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

2.3 Требование к системе

2.3.1 Требования к системе в целом

2.3.1.1 Требования к структуре

Данная система состоит из следующих частей:

  • Рисование графических примитивов, таких как: Line, Rectangle, Triangle, Ellipse

  • Преобразование пространства посредством функции Mirror, в частности примитива Ellipse

2.3.1.2 Требования к надежности

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

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

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

2.3.1.3 Требования к эксплуатации

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

2.3.2 Требования к функциям, выполняемым программным продуктом

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

  • Работа с графическими файлами

    1. Создание нового графического файла

  • Рисование основных геометрических примитивов

  1. Рисование отрезков прямых

  2. Рисование прямоугольников

  3. Рисование треугольников

  4. Рисование эллипсов

  • Дополнительные возможности редактирования

    1. Зеркальное преобразование пространства с нарисованными в нем эллипсами

2.3.3 Требования к видам обеспечения

2.3.3.1 Математическое обеспечение системы

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

2.3.3.2 Лингвистическое обеспечение системы

Программный продукт должен разрабатываться только с использованием среды программирования C++ Builder 6. Использование других сред программирования не допускается. Необходимо добиться безошибочной работы приложения на ОС Windows семейства ХР.

2.3.3.3 Технического обеспечения системы

Для нормального функционирования программного продукта необходимо:

  • Процессор i80486

  • 16Мб RAM

  • Не менее 3 Мб свободного места на жестком диске

  • Клавиатура и манипулятор мышь

Для работы с приложением потребуется установленная операционная система Windows семейства XP. Для функционирования приложения не требуется никаких специально установленных программных продуктов.

2.4 Состав и содержание работ по созданию системы (Табл. 1)

Таблица 1

Этап разработки

Срок выполнения

1

Утверждение темы. Разработка плана.

17.09.2008 – 3.10.2008

2

Обзор литературы и способов решения, обоснование выбора способа решения, аппаратной и программной платформ, среды разработки.

До 17.10.2008

3

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

17.10.2008 – 21.11.2008

4

Формулирование требований к аппаратной и программной платформам, руководство по установке и администрированию приложения, руководство пользователя.

До 21.11.2008

5

Окончательное оформление чертежей и расчетно-пояснительной записки. Подготовка доклада.

До 8.12.2008

  1. Исследовательская часть

    1. Варианты способа решения

  • создание четырех классов соответственно количеству заданных примитивов содержащих данные о них и двух методов: перерисовки изображения и преобразования пространства

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

При реализации поставленной задачи она была разбита на две части:

  • рисование графических примитивов

  • преобразование пространства при помощи алгоритмов преобразования пространства

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

3.2 Обоснование выбора платформы

Для реализации программы была выбрана платформа Microsoft Windows XP. Этот выбор обусловлен наличием данной ОС на ЭВМ в аудиториях университета, что позволит наглядно продемонстрировать полученный программный продукт.

3.3 Обоснование выбора языка программирования

Для реализации данного программного продукта был выбран язык C++. Этот выбор обусловлен тем, что объектно-ориентированный язык высокого уровня C++ на порядок превосходит свои аналоги по оценочному параметру скорость-удобство: он имеет все высокоуровневые средства структурирования программ, и при этом программы, написанные с его помощью, являются очень быстрыми благодаря использованию оптимизирующих компиляторов. Кроме того, компиляторы для C++ существуют почти подо всеми платформами, и большинство из них поддерживают последние стандарты языка. Поскольку системы контроля версий нередко используются для разработки мульти-платформенных приложений, то весьма вероятно, что программы впоследствии придется переносить под другую операционную систему. Язык С++ позволит легко это сделать.

3.4 Обоснование выбора среды программирования

Выбор данной среды программирования С++ Builder обусловлен заданием, выданным преподавателем. Достоинством данной среды является то, что в ней реализована идея подлинно визуальной разработки программ. Дизайнер интерфейсов позволяет, не написав ни строчки кода, создавать программы со сложным интерфейсом. Программист лишь пишет важный для работы код, интерфейс за него реализует среда.

  1. 4. Конструкторская часть

4.1 Функциональное назначение

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

4.2 Описание логической структуры

Решения поставленной задачи разбивается на несколько частей:

  • рисование графических примитивов

  • зеркальное преобразование пространства

Алгоритмы рисование графических примитивов

Рисование отрезков прямых

Р

X

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

(X0;Y0) – текущая позиция



(X1;Y1) – аргументы функции LineTo()


Y


Рисование прямоугольников

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

1

X

)

(X0;Y0) – текущая позиция



(X1;Y1) – аргументы функции Rectangle()


Y


X


2 )


Y


Рисование треугольников

Рисование треугольников производится при помощи последовательной прорисовки его граней с помощью отдельных линий. Сначала рисуется одна линия, после чего, имея уже две вершины, необходимо задать третью. К точке следующего щелчка курсора из первых 2 вершин прорисовываются еще две линии, все вместе с первой образуя треугольник.

1)

X

(X0;Y0) – текущая позиция




Y

(X1;Y1) – аргументы функции LineTo()


Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5167
Авторов
на СтудИзбе
437
Средний доход
с одного платного файла
Обучение Подробнее