Задача Life - Жизнь Конвея

Предисловие

Эта задача дается для того, чтобы вы вспомнили все необходимые языковые средства и создали основу для последующих задач курса.

Вам необходимо спроектировать основное окно с меню и тулбаром, пункты которых соответствуют друг другу.

  • Интерфейс и код должны удовлетворять основным требованиям с главной страницы.
  • Обязательными являются меню “Файл” и “Справка” и пунктами “Выход” и “О программе” соответственно.
  • Две этих кнопки (с иконками, без надписей) должны присутствовать и на тулбаре.
  • “О программе” должно вызывать модальный диалог с информацией о программе.

Осваемые навыки

  1. Отработка процесса выполнения и сдачи заданий в срок.
  2. Формирование корректной структуры проекта и загрузку его в Git.
  3. Использование средств графических возможностей библиотеки Java Swing:
    1. Рисование графических примитивов
    2. Вывод текстовых надписей.
    3. Работа с таймером.
    4. Обработка событий мыши.
  4. Чтение и запись графической модели из файла.
  5. Реализация диалога настройки параметров алгоритмов.
  6. Алгоритм Брезенхэма для рисования линии.
  7. Алгоритм Span-заливки.

Информация по алгоритмам

  • Алгоритм Брезенхэма рисования линии и алгоритм Span-заливки должны быть реализованы самостоятельно.
  • Алгоритм Брезенхэма обязательно должен быть реализован только для толщины 1. Для большей толщины линии можно использовать стандартные средства рисовании линии.
  • Выдержки из лекций по алгоритмам Брезенхэма и Span-заливки тут.

Условия задачи

  • Условия задачи тут.
  • Примеры решений тут.

Информация об алгоритмах в коде

Необходимо в описании pull request’а указать расположение в коде реализации следующих алгоритмов:

  1. Алгоритм Брезенхема для рисования линии.
  2. Алгоритм Span-заливки.

Сроки сдачи

Первая сдача - .
Предоставление кода - .
Итоговая сдача - 3 недели.
Дата модификации: