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

Автор работы: Пользователь скрыл имя, 27 Мая 2013 в 04:20, курсовая работа

Описание работы

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

Содержание работы

Введение……………………………………………………………………… 5
1 Аналитический обзор литературы 7
2 Разработка алгоритма ………………………………………………………. 9
3 Разработка программного стредства 11
3.1 Описание классов 11
3.2 Диаграмма классов…………………………………………………… 16
4 Обоснование технических приемов программирования 18
5 Тестрование, эксперементальные исследования и анализ полученных результатов………………………………………………………………………...19
6 Руководство пользователя………………………………………………………28
Заключение 33
Список литературы 34
Приложение листинг программы……………..……………………………....35
Ведомость…………………………………………………………………….....

Файлы: 1 файл

Курсовая работа Каханович Артур.docx

— 861.97 Кб (Скачать файл)

Министерство  образования Республики Беларусь

Учреждение  образования «Белорусский государственный  университет информатики и радиоэлектроники»

 

 

 

Факультет компьютерных систем и сетей

 

Кафедра программного обеспечения информационных технологий

 

Дисциплина:  Языки программирования (ЯП)

 

 

 

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

к курсовому  проекту

на тему

 

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

БГУИР КП  1-40 01 01  415  ПЗ

 

 

 

 

 

 

 

Студент:  гр. 051004 Каханович А.Ю.

 

 

Руководитель: асс. Шостак Е.В.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Минск 2012 

Учреждение  образования

«Белорусский государственный  университет информатики и радиоэлектроники»

 

Факультет компьютерных систем и сетей

 

УТВЕРЖДАЮ

Заведующий кафедрой ПОИТ

––––––––––––––––––––––––

             (подпись)

––––––––––––––––– 2010  г.

 

ЗАДАНИЕ

по курсовому  проектированию

 

Студенту    Кахановичу Артуру Юрьевичу

1. Тема  работы   Построение и обработка графических объектов –––––––––––––––––––––––                  ––   ––––

2. Срок сдачи студентом законченной работы––29.12.2012 г.–––   

3. Исходные данные к работе   OC Windows; язык программирования C#

4. Содержание расчётно-пояснительной записки (перечень вопросов, которые подлежат разработке)

Введение. 1. Аналитический обзор литературы. 2. Разработка алгоритма.

3. Разработка программного  средства. 4. Обоснование технических приемов программирования. 5. Тестрование, эксперементальные исследования и анализ полученных результатов. 6. Руководство пользователя. Заключение. Список литературы. Приложения. Ведомость.      

5. Перечень графического материала  (с точным обозначением обязательных чертежей и графиков)

1. Блок - схема алгоритма методов Undo и Redo

6. Консультант по курсовой работе Шостак Е.В.

 

7. Дата выдачи задания  7.09.2012 г.–––––––––––––––––––––––   –

 

8. Календарный график  работы над проектом на весь  период проектирования (с обозначением сроков выполнения и процентом от общего объёма работы):

раздел 1 к 15.09.2012  – 15 % готовности работы;

разделы 2 к 15.10.2012  – 30 % готовности работы;

разделы 3 к 15.11.2012   – 60 % готовности работы;

раздел 4,5,6 к 15.12.2012  – 90 % готовности работы;

оформление пояснительной записки  и графического материала к 17.12.2012 – 100 % готовности работы.

Защита курсового проекта с 17 по 29 декабря 2012 г.–––––––––––––––––––––

 

РУКОВОДИТЕЛЬ––––––             Е.В.Шостак   

                                                                                                                 (подпись)

 

 

Задание принял к исполнению –––____–– Каханович А.Ю.    7.09.2012 г. 

(дата  и подпись студента)

 

СОДЕРЖАНИЕ

 

Введение……………………………………………………………………… 5

1 Аналитический обзор литературы 7

2 Разработка алгоритма ……………………………………………………….   9

3 Разработка программного стредства 11

3.1 Описание классов 11

     3.2 Диаграмма классов……………………………………………………    16

4 Обоснование технических приемов программирования  18

5 Тестрование, эксперементальные исследования и анализ полученных результатов………………………………………………………………………...19

6 Руководство пользователя………………………………………………………28

Заключение 33

Список литературы 34

Приложение листинг программы……………..……………………………....35

Ведомость…………………………………………………………………….....56

ВЕДЕНИЕ

 

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

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

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 Аналитический обзор  литературы

    1. Графические редакторы

Графические Редакторы бывают растровые и векторные:

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

Растровые графические редакторы  позволяют пользователю рисовать и редактировать изображения на экране компьютера, а также сохранять их в различных растровых форматах, таких как, например, JPEG и TIFF, позволяющих хранить растровую графику с незначительным снижением качества за счёт использования алгоритмов сжатия с потерями, PNG и GIF, поддерживающими хорошее сжатие без потерь, и BMP, также поддерживающем сжатие (RLE), но в общем случае представляющем собой несжатое «попиксельное» описание изображения.

Векторные графические  редакторы позволяют пользователю создавать и редактировать векторные изображения непосредственно на экране компьютера, а также сохранять их в различных векторных форматах, например, CDR, AI, EPS, WMF или SVG.

  • Кривые Безье — позволяют создавать прямые, ломаные и гладкие кривые, проходящие через узловые точки, с определёнными касательными в этих точках;
  • Заливка — позволяет закрашивать ограниченные области определённым цветом или градиентом;
  • Текст создаётся с помощью соответствующего инструмента, а потом часто преобразуется в кривые, чтобы обеспечить независимость изображения от шрифтов, имеющихся (или отсутствующих) на компьютере, используемом для просмотра;
  • Набор геометрических примитивов;
  • Карандаш — позволяет создавать линии «от руки». При создании таких линий возникает большое количество узловых точек, от которых в дальнейшем можно избавиться с помощью «упрощения кривой».

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

  • Векторные редакторы обычно более пригодны для создания разметки страниц, типографии, логотипов, sharp-edged artistic иллюстраций (например, мультипликация, clip art, сложные геометрические шаблоны), технических иллюстраций, создания диаграмм и составления блок-схем.
  • Растровые редакторы больше подходят для обработки и ретуширования фотографий, создания фотореалистичных иллюстраций, коллажей, и создания рисунков от руки с помощью графического планшета.

Последние версии растровых редакторов (таких, как GIMP или Photoshop) предоставляют пользователю и векторные инструменты (например, изменяемые кривые), а векторные редакторы (CorelDRAW, Adobe Illustrator, Xara Xtreme, Adobe Fireworks, Inkscape, SK1 и другие) реализуют и растровые эффекты (например, заливку), хотя иногда и несколько ограниченные по сравнению с растровыми редакторами.

Adobe Photoshop — многофункциональный графический редактор, разработанный и распространяемый фирмой Adobe Systems. В основном работает с растровыми изображениями, однако имеет некоторыевекторные инструменты. Продукт является лидером рынка в области коммерческих средств редактирования растровыхизображений, и наиболее известным продуктом фирмы Adobe. Часто эту программу называют просто Photoshop. В настоящее время Photoshop доступен на платформах Mac и Windows. Ранние версии редактора были портированы под SGI IRIX, но официальная поддержка была прекращена, начиная с третьей версии продукта. Для версий 8.0 и CS6 возможен запуск под Linuxс помощью альтернативы Windows API — Wine.[2]

Несмотря на то, что изначально программа была разработана как  редактор изображений для полиграфии, в данное время она широко используется и в веб-дизайне. В более ранней версии была включена специальная программа для этих целей — Adobe ImageReady, которая была исключена из версии CS3 за счёт интеграции её функций в сам Photoshop, а также включения в линейку программных продуктов Adobe Fireworks, перешедшего в собственность Adobe после приобретения компанииMacromedia.

Photoshop тесно связан с другими программами для обработки медиафайлов, анимации и другого творчества. Совместно с такими программами, как Adobe ImageReady (программа упразднена в версии CS3), Adobe Illustrator, Adobe Premiere, Adobe After Effects и Adobe Encore DVD, он может использоваться для создания профессиональных DVD, обеспечивает средства нелинейного монтажа и создания таких спецэффектов, как фоны, текстуры и т. д. для телевидения, кинематографа и всемирной паутины. Photoshop также прижился в кругах разработчиков компьютерных игр.

Основной формат Photoshop, PSD, может быть экспортирован и импортирован всеми программными продуктами, перечисленными выше. Photoshop CS поддерживает создание меню для DVD. Совместно с Adobe Encore DVD, Photoshop позволяет создавать меню или кнопки DVD. Photoshop CS3 в версии Extended поддерживает также работу с трёхмерными слоями.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2 Разработка алгоритма

 

Алгоритмы для  данного программного продукта будут разработаны в курсовом проекте с учетом языка программирования C#. Си-шарп — объектно-ориентированный язык программирования для платформы .NET. Он поддерживает  все три «столпа» объектно-ориентированного программирования: инкапсуляцию, наследование и полиморфизм, имеет прекрасную поддержку компонентов, надежен и устойчив благодаря использованию «сборки мусора», обработки исключений, безопасности типов, что значительно повышает качество, и удобство написания программы.

Условно алгоритм программы можно разделить на 2 этапа:

  1. Подготовительный этап:

а. Выбор исходных параметров

  1. Главная часть:
  1. Рисование картинки;
  1. Её редактирование;

 

 Подготовительный этап

 

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

 

 Главная часть

 

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

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

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

Как уже было сказано, нарисованную фигуру можно отредактировать.

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

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