Министерство образования и науки Украины
1 Постановка задачи
Цель настоящей курсовой работы – проектирование и программная реализация системы, которая в соответствии с заданным вариантом реализует процессы создания и взаимодействия группы объектов.
Архитектура системы определяет ее разбиение на модули, задает контекст, в рамках которого принимаются проектные решения на следующих этапах разработки. Приняв решения о структуре системы в целом, разработчик системы производит ее разбиение на относительно независимые в реализации части (модули).
По варианту задания на базе объектного подхода необходимо спроектировать и разработать модель системы, работающей с графикой по заданному плану. Постановка задачи подразумевает разработку многофункционального графического редактора со стандартными функциями удаления (стирания) фигур, рисования, вставки готовых образов, наложения фигур, растяжения (сжатия) и др. Система должна быть выдержана в едином стиле и снабжена справочной подсистемой с указанием возможностей.
2 Описание проектного решения
Целью данной работы является разработка простейшего графического редактора с помощью объектно-ориентированного языка программирования, с использованием его графических функций и методов.
Реализованный графический редактор позволяет осуществлять работу с как уже имеющимися изображениями, так и создавать собственные с помощью различных возможностей таких как:
создание векторных объектов (круга, квадрата, скруглённого квадрата, ромба) и их различные модификации (растягивание) в эллипс, прямоугольник и прямоугольник со скруглёнными вершинами соответственно. Возможно изменение цвета фигур, толщины линии их образа;
создание рисунков с помощью линий (карандаша), кисти различной толщины, спрея (объект, который создаёт эффект напыления пикселей на определённую небольшую область рисунка);
вывод текста на редактируемый рисунок;
стирание любой нарисованной картинки;
а также реализовано копирование, вставка а также сохранение картинки в формате *.bmp.
Объектно-ориентированный анализ и проектирование нельзя определить ни как проектирование сверху вниз, ни как проектирование снизу вверх; его можно скорее назвать «возвратным проектированием», что подразумевает ступенчатый процесс разработки системы с постепенной модификацией различных, но, тем не менее, согласованных между собой логических и физических представлений о системе в целом.
Созданная система в процессе деятельности может быть представлена рядом состояний, которые осуществляют те или иные действия. В системе можно выделить некоторое начальное состояние и конечное, завершающее работу состояние. Анализ системы следует начать с жизненного цикла - рисунок 2.1.
Рисунок 2.1 - Жизненный цикл системы
На рисунке 2.1 приняты следующие обозначения:
1 – выбран инструмент линия, карандаш, геометрическая фигура или текст;
2 - выбран инструмент цвета;
3 - выбран инструмент геометрическая фигура;
4,5,6,7,8,9 - выбран инструмент линия, карандаш, геометрическая фигура или текст;
10 - выбрана определенная толщина линии;
11 - некоторый этап рисования завершен, необходимо сохранить рисунок;
12 - рисунок сохранен, необходимо продолжить рисование;
13 - редактирование или рисование завершено, выход из программы;
14 - отредактированный или нарисованный рисунок сохранён, завершение работы.
15 - выбор другого инструмента, редактирование;
16 - рисунок сохранён, редактирование;
17 - выбран определённый тип заполнения;
Из рисунка 2.1 видно, что начальным этапом является создание нового или открытие уже существующего рисунка. Когда рисунок создан, можно осуществлять его редактирование, сохранение под новым именем либо в уже созданном файле. Для редактирования разработан ряд инструментов, осуществляющих различные функции:
карандаш;
ластик;
заливка;
распылитель;
рисование прямоугольников;
рисование скругленных прямоугольников;
рисование окружностей;
рисование линий;
рисование пирамиды.
рисование ромбов;
ввод текста;
Существуют также инструмент выбора цвета инструмента и цвета заливки.
В процессе редактирования происходит взаимодействие объектов, отвечающих за стиль рисования тех или иных фигур.
Взаимодействие объектов кнопка “фигура” и кнопка “заполнение” показано на диаграмме переходов состояний (рисунок 2.4).
Так как большинство действий в системе производится в соответствии с событиями от мыши, то основные входные данные для системы – это текущие координаты и сами события MouseDown, MouseUp, MouseMove.
Рисунок 2.5 - Диаграмма потоков данных
Так как не было необходимости в проекте создавать специальные классы для реализации объектов, то в иерархии классов будут приведены основные классы среды Delphi, используемые для
реализации основных возможностей проекта и их описание.
Наверняка у вас есть товары или услуги, продажа которых приносит вам максимальную прибыль. Для быстрого старта в сети вам необходимо создание посадочной страницы (одностраничного сайта), на которой будет размещена информация о маржинальных товарах/услугах интернет магазина. За 8 лет опыта разработки конверсионных страниц мы выработали оптимальную структуру, которая позволит привлекать через landing page больше продаж. На такую структуру «одевается» ваш контент — фирменный стиль, тексты, фотографии, уникальные торговые предложения, после чего страница выходит в свет. Разработка лендинга и запуск в сети — до 7 рабочих дней. Стоит отметить, что в разработку самой посадочной страницы входит и написание копирайтером продающих текстов для вашего бизнеса, чтобы каждый посетитель страницы захотел совершить покупку именно у вас. Результат: качественно разработаная продающая посадочная страница, которая готова приносить вам новых клиентов.