ЛР1. Разработка класса - холста для рисования
Задание
Разработать класс TXCanvas для рисования различных графических объектов, где X - номер студенческого билета студента.
Каждая точка холста описывается цветом в виде триплета RGB.
Рисование обеспечивается сущностью "карандаш", которая описывается цветом RGB и текущим местоположением (позицией).
Запрещается использовать любые существующие средства поддержки графики, за исключением последнего задания.
Проверить работоспособность всех методов класса.
Декларируемые возможности TXCanvas:
- Методы загрузки и сохранения холста в формате PPM P3 (см. смежный предмет)
- Методы для изменения и получения размеров холста
- Методы для изменения и получения текущего цвета
- Методы для изменения и получения текущей позиции
- (30) Метод рисования точки в текущей позиции текущим цветом
- Метод рисования прямоугольника заданного размера в текущей позиции текущим цветом
- Метод рисования закрашенного прямоугольника заданного размера в текущей позиции текущим цветом
- Метод рисования отрезка текущим цветом в заданную позицию из текущей с перемещением карандаша в конечную позицию
- Метод закраски ограниченной области в текущей позиции текущим цветом (см. смежный предмет)
- (50+20) Метод накладывания стороннего холста на текущий холст в текущую позицию, считая прозрачным текущим цвет
- (+20 первому, +10 второму, +5 остальным) Методы загрузки и сохранения холста в форматах JPG,PNG,PCX и других,
поддерживаемых пакетом fcl-image.
Задание состоит из двух блоков и допзадачи. 1-5 - первый блок, 30 баллов. 6-10 - второй блок, от 50 до 70 баллов
в зависимости от своевременности сдачи. 11 - необязательная допзадача с дифференцированным начислением баллов.