Блок задач

2. OOC

Темы
Сложность 4

Задача «2D сцена»

Необходимо разработать программу, которая строит двумерную сцену с заданными объектами.

Входные данные

Текстовый файл с описанием 2D сцены, которую необходимо создать. Пример:

10 10 1000 1000
point 1 2
rect 1 2 3 4
hline 10 10 20
vline 30 30 40

Поддерживаемые записи во входном файле:

  • Первая строчка файла вида x1 y1 x2 y2 — прямоугольник пользовательских координат (в каком окне возможна отрисовка)
  • point x y — точка в координатах (x, y)
  • rect x1 y1 x2 y2 — прямоугольник, заданный точками (x1, y1) и (x2, y2)
  • hline x1 x2 y — линия, заданная точками (x1, y) и (x2, y)
  • vline y1 y2 x — линия, заданная точками (x, y1) и (x, y2)

Выходные данные

Реализация

Необходимо создать все объекты, описанные в полученном на вход файле, добавить их с 2D сцене, и отрисовать.

Иерархия классов объектов:

Object
|- Point
|- Rect
|- HLine
+- VLine

Примечание

Задача должна быть реализована на базе фреймворка OOC.