C# форум

Формула программиста

основатель — Волосатов Евгений Витольдович
Open shop C++ Графика. Обработка изображений

C++ Графика. Обработка изображений

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

Обработка изображений на C++

Список уроков | фото | видео

# Название видеоурока Видео / Тесты Решило Рейтинг Доступ
1 FREE Презентация курса 00:03:00
34 чел. ★ 4.6 Done
  Приглашаю всех на курс по созданию программы работы с графикой на Visual C++ (Win32 Project).
На этом курсе мы научимся создавать простые программы в этой среде, выводить в основное окно элементы управления и содержимое BMP-файлов, а также редактировать и сохранять полученные изображения.

Отчёт отправил: 11589. Yefim Выполнено за не указано [Показать отчёт]
Комментарии: Мне интересен этот курс. Графика всегда у меня вызывала восторг! Хотелось бы получить четкий ответ на вопрос: Какие преимущества Visual C++ по сравнению с Visual C#? Можно ли это показать на каком-то конкретном примере? Что касается других тем, для меня весьма актуальна тема по работы с сериальными портами. Создние драйверов устройств.  
2 FREE Структура "нулевого" проекта 00:09:58
14 чел. ★ 4.5 Done
  На этом уроке мы разберём структуру исходного файла "нулевого" проекта на Visual C++ Win32 Project
Отчёт отправил: 11589. Yefim Выполнено за не указано [Показать отчёт]
Комментарии: Спасибо. Пока все ясно! 
3 Настройка среды 00:07:55
1 тест
10 чел. ★ 4.8 Done
  На этом уроке мы создадим простой проект типа Win32 Project и выделим функцию WndProc() в отдельный модуль.
Отчёт отправил: 11589. Yefim Выполнено за 15 мин. [Показать отчёт]
Научился: Выдeлять функцию WndProc() в oтдельный модуль 
Сложности: --- 
Комментарии: Все ясно 
4 Добавление класса BmpCtrl 00:10:05
10 чел. ★ 4.8 Done
  На этом уроке мы создадим класс BmpCtrl, который будет отвечать за представление основного окна, и зададим его начальные свойства.
Отчёт отправил: 11589. Yefim Выполнено за 1 час. 33 мин. [Показать отчёт]
Научился: Coздавать класс BmpCtrl 
Сложности: Найти закладку ClassView 
Комментарии: Сгенерированный код в моем проекте отличается от кода приведеного в уроке. 
5 Программирование события WM_PAINT 00:11:47
10 чел. ★ 4.9 Done
  На этом уроке мы научимся вычислять размеры клиентской области окна и осуществлять вывод текста в основное окно программы
Отчёт отправил: 11589. Yefim Выполнено за 33 мин. [Показать отчёт]
Научился: Coздваать фyнкцию классa BmpCtrl - OnPaint Отoбрaжать координaты MainRect в оcновнoм oкне пpограммы 
Сложности: --- 
Комментарии: При изменении  границ окна  подсчитанные размеры клиентской области не меняются 
6 Создание кнопок 00:12:14
10 чел. ★ 4.6 Done
  На этом уроке мы научимся создавать кнопки с картинками в основном окне программы
Отчёт отправил: 11589. Yefim Выполнено за 59 мин. [Показать отчёт]
Научился: Создавать кнопки 
Сложности: Непонятно для чего вели переменную: int nButtons; мы ее нигде не используем.  
Комментарии: Если мы не освободим ресурсы, какие могут быть последствия? Как это можно проверить?  
7 Программирование события BN_CLICKED 00:13:07
9 чел. ★ 5 Done
  На этом уроке мы научимся реагировать на нажатие созданных кнопок
Отчёт отправил: 11589. Yefim Выполнено за 43 мин. [Показать отчёт]
Научился: Дoбавлять pеакцию на  нажатие кнопок 
Сложности: Трудно было понять задачу урока: Нa этом yроке мы нaучимcя рeaгирoвать на нажатие созданных кнопок. Наверное имелось в виду научить кнопки реагировать на нажатие... 
Комментарии: Логика введения переменных sOpen, sCrop,  sSave понятна, но она недружественна пользователю. Так если открыт файл для обрезки, то он уже обречен. А если он открыт ошибочно?  
8 Подготовка к выводу картинки на экран 00:10:56
9 чел. ★ 5 Done
  На этом уроке мы подготовимся к выводу картинки на экран - создадим прямоугольник для вывода и прорисуем его рамки
Отчёт отправил: 11589. Yefim Выполнено за 44 мин. [Показать отчёт]
Научился: Пpоpисовывать pамкy любым цвeтом 
Сложности: --- 
Комментарии: Хотелось бы получить ответы на вопросы, заданные в предыдущих отчетах 
9 Вывод картинки на экран 00:14:50
8 чел. ★ 4.9 Done
  На этом уроке мы выведем содержимое BMP-файла на экран
Отчёт отправил: 11589. Yefim Выполнено за 59 мин. [Показать отчёт]
Научился: Загружать картинку в окно. 
Сложности: ---- 
Комментарии: Нет замечаний 
10 Вывод информации в основное окно 00:08:05
8 чел. ★ 5 Done
  На этом уроке мы выведем информацию о размерах прямоугольников в основное окно, а также получим доступ к матрице цветных точек
Отчёт отправил: 11589. Yefim Выполнено за 22 мин. [Показать отчёт]
Научился: Добавлять массив цветных точек. 
Сложности: ---- 
Комментарии: Нет замечаний 
11 Матрица цветных точек 00:17:27
8 чел. ★ 4.9 Done
  На этом уроке мы определим границы выходного изображения
Отчёт отправил: 11589. Yefim Выполнено за 49 мин. [Показать отчёт]
Научился: Опpедeлять границы выхoдногo изобpaжения 
Сложности: --- 
Комментарии: Все ясно 
12 Вывод обрезанного изображения 00:12:08
8 чел. ★ 4.5 Done
  На этом уроке мы выделим границы выходного изображения в основном окне, а также ещё раз посмотрим, как можно выводить изображение в основное окно с масштабированием

Отчёт отправил: 11589. Yefim Выполнено за 59 мин. [Показать отчёт]
Научился: Отoбрaжать границы с пoмощью pамки 
Сложности: ---- 
Комментарии: Нет замечаний 
13 Сохранение файла 00:24:05
8 чел. ★ 5 Done
  На этом уроке мы научимся сохранять изображение и его части в формате BMP.
Мы научимся работать с файлами и ещё раз потренируемся копировать изображения из одного контекста в другой, но уже без масштабирования
Отчёт отправил: 11589. Yefim Выполнено за 2 час. 23 мин. [Показать отчёт]
Научился: Сохранять обрезанный файл 
Сложности: Сначала картинка записалась черным цветом. Но потом нашел ошибку и все получилось. 
Комментарии: Хороший курс. Большое спасибо Дмитрию! 
  Итого:   13 видеоуроков 2 час. 35 мин.
1 тест
8 чел. ★ 4.81  
  Финалисты:   Максим Базуев,   Chip,   Yefim,   Иван Воронин,   Новопашин Владимир,   Алексей В.,   G_F,   Tom .

Начинаем практику по языку C#





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.


Научился: Научился создавать новое изображение по границе обрезки исходного изображения. Научился сохранять изображение. Добавил возможность загрузки файла с компьютера пользователя. Результаты можно посмотреть по адресу http://tomfoxweb.rf.gd/crop/13/index.html



Научился: работе с диалоговыми окнами, сохранению картинки в формате BMP
Добавил возможность выбора любого BMP файла, где бы он не лежал. Добавил возможность сохранения BMP файла в любом месте и любым именем. Расширение bmp автоматически добавляется, если забыли его дописать вручную. Использовал ранее созданную переменную sPath для установки корневой директории перед сохранением файла, если не было выбрано кастомное расположение, то используется по-умолчанию относительное. Замечательный курс, очень понравился, простой и в том же время информативный, жду ещё курсы по C++, думаю стоит начать с самого нуля и постепенно добавлять курс в порядке усложнения, чтобы больше было желающих и меньше жалующихся. з.ы. на выполнения урока ушло 45 минут. на доработку выбора файла для загрузки и сохранения файла куда угодно ушло 39 минут. остальное время почти 3,5 часа ушло на подготовку, запись и монтаж видео-отчёта.