Дмитрий Усенков Занимательные задачи по программированию обработки растровой графики

Введение

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

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

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


При решении предлагаемых в данной брошюре задач (при написании, исполнении и отладке соответствующих программ) предлагается использовать среду визуального программирования Visual Basic (VB) либо транслятор с языка Паскаль – PascalABC.Net. Каждое из этих двух инструментальных средств обладает своими преимуществами и особенностями при работе с растровой графикой, которые будут рассмотрены далее.

Загрузка...