Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Описание структурных элементов программы
Основная форма и логика функционирования программы описана в следующих файлах: · Form1.cs · Form1.Designer.cs · Program.cs Файл Form1.cs содержит описание класса Form, т.е. описание нашей формы, являющейся объектом этого класса. В нем представлена логика методов класса Form, а именно: · private void MakeGray(Bitmap bmp) – метод, отвечающий за обработку изображения, и приведение его в черно-белый вид. В метод передается текущее изображение из picturebox1, результатом работы является вывод в picturebox1 обработанного изображения. Метод был оптимизирован, вместо изображения мы блокируем набор данных изображения в памяти, и работаем с байтами этого изображения в памяти напрямую. После обработки мы копируем набор данных обратно в изображение, и производим разблокировку набора данных изображения в памяти. Оптимизация существенно сократила время обработки изображения; · private Bitmap _IncreaseBrightness(Image original, int sign) – метод, производящий фильтрацию изображения для ослабления перепадов яркости, реализует три варианта (в зависимости от входного параметра sign типа int) использования данного фильтра. В своей работе использует методы private Color _SubColors(Color x, Color y) и private Color _GetSumOfColor(Color[] colors) для вычисления разницы яркости одной из восьми точек вокруг обрабатываемой и обрабатываемой по интенсивности каждого цвета RGB, и рассчета среднего значения изменения яркости d соответственно; В метод передается текущее изображение из picturebox1, результатом работы является вывод в picturebox1 обработанного изображения; · private static Image Kvadr(Image original) с помощью таймера TimerKvadr реализует демонстрацию эффекта случайного разбрасывания квадратиков 5*5 пикселей черного цвета по всему изображению; В метод передается текущее изображение из picturebox1, результатом работы является вывод в picturebox1 обработанного изображения; · private static Image Proz(Image original, int procent) с помощью таймеров TimerProzr100, TimerProzr75, TimerProzr50, TimerProzr25 реализует демонстрацию эффекта превращения изображения в прозрачное на 100, 75, 50 и 25% соотвественно. В метод передается текущее изображение из picturebox1, и процент прозрачности (procent) в виде значения параметра альфа канала ARGB, от 0 до 255. Результатом работы является вывод в picturebox1 обработанного изображения; · private static Image Aproz(Image original) с помощью таймера TimerAprozr реализует демонстрацию эффекта превращения изображения из непрозрачного в прозрачное. В метод передается текущее изображение из picturebox1, результатом работы является вывод в picturebox1 обработанного изображения;
· private static Image Invert(Image original) – метод, отвечающий за обработку изображения, и получение его негатива. Метод был оптимизирован, вместо изображения мы блокируем набор данных изображения в памяти, и работаем с байтами этого изображения в памяти напрямую. После обработки мы копируем набор данных обратно в изображение, и производим разблокировку набора данных изображения в памяти. Оптимизация существенно сократила время обработки изображения; В метод передается текущее изображение из picturebox1, результатом работы является вывод в picturebox1 негатива изображения. · private static Bitmap GenerateNoise(Image original) при помощи таймера TimerNoize реализует демонстрацию эффекта превращения изображения в телевизионные помехи. В метод передается текущее изображение из picturebox1, результатом работы является вывод в picturebox1 обработанного изображения; · public Image Kvadrcentrout(Image original) с помощью таймера Timerkvadrcentrout, и public Image Kvadrcentrin(Image original) c помощью таймера Timerkvadrcentrin реализуют демонстрацию эффекта деления изображения на 4 части черными линиями толщиной в 5 пикселей от центра изображения к его краям, и от краев изображения к его центру соответственно. В любой из методов передается текущее изображение из picturebox1, результатом работы является вывод в picturebox1 обработанного изображения; Кроме того, в файле описаны обработчики событий нажатий на кнопки формы. Файл Form1.Designer.cs представляет из себя структурированное описание свойств формы и ее элементов таких как физические характеристики (размеры, расположение), значения по умолчанию и др. Файл Program.cs представляет собой описание главной точки входа для приложения.
|
|||||
Последнее изменение этой страницы: 2017-02-10; просмотров: 114; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.128.79.88 (0.006 с.) |