Документ взят из кэша поисковой машины. Адрес оригинального документа : http://uneex.lorien.cs.msu.su/LecturesVMSH/Python/2013-12-13
Дата изменения: Unknown
Дата индексирования: Sun Apr 10 02:36:35 2016
Кодировка: UTF-8
LecturesVMSH/Python/2013-12-13 - UNИX

Классы и объекты, подход второй

Домашнее задание

  1. {i} Прочитать про классы в учебнике (лучше начать прямо с раздела Первый взгляд на классы)

  2. Модифицировать ?простейший графический редактор?:

    • Обратите внимание на то, как в методе __init__() класса Line вызывается метод __init__() класса Dot

    • Добавить и задействовать класс Circle для рисования окружности (унаследовать его от Line, заметьте, что даже метод redraw() не придется переписывать!)

    • Добавить и задействовать класс Polygon для рисования многоугольника-ломаной. Трудность: в многоугольнике неизвестно сколько точек (скажем, не больше 1000). Вариант решения: отличать событие ?ввод фигуры закончен? и добавить соответствующий метод сразу во все классы; в Polygon этот метод будет менять ndots

    • {*} Добавить еще какие-нибудь классы, насколько фантазии хватит: например, непараллельный сторонам экрана квадрат (по диагонали), эллипс (по трем точкам) и т. п.

    • Сделать цвет объекта полем и передавать его при __init__() во все объекты

    • {*} реализовать выбор цвета (подсказка: surface.get_at())

    • 2013-12-13-greditor2.py

Условные обозначения


CategoryClass CategoryVmsh

LecturesVMSH/Python/2013-12-13 (последним исправлял пользователь FrBrGeorge 2013-12-20 11:21:07)