Задача B. Скворечник

Автор:Ян Т.В.   Ограничение времени:5 сек
Входной файл:input.txt   Ограничение памяти:1512 Мб
Выходной файл:output.png  
Максимальный балл:100  

Условие

Вам необходимо разработать упрощенную 3D модель скворечника.

Центр нижней грани основания модели скворечника должен находится в точке начала координат. Толщина досок должна быть равной 1 см. Высота скворечника — 36 см, включая толщину крыши. Лицевая сторона скворечника должна быть параллельна плоскости XZ и расположена со стороны положительной координаты оси Y. Центр отверстия летка скворечника находится на высоте 25 см, центр жёрдочки — на высоте 20 см. Дырки под жёрдочку быть не должно. В модели меш жёрдочки должен соприкасаться со стенкой скворечника. Другие размеры и взаимное расположение досок показаны на рис. 1.

Имеются рендеры из viewport с нескольких ракурсов — рис. 2, рис. 3. Обратите внимание, что рендеры также несут дополнительную информацию о форме, расположении и размерах модели. Модель не должна содержать текстур.

Модель проверяется на основе попиксельного сравнения рендеров с указанных во входном файле ракурсов. К модели применяется автоматически созданный материал со случайно подобранным оттенком. В качестве метрики для сравнения рендеров моделей используется величина dssim по каждому цветовому каналу. Баллы за каждый тест начисляются в зависимости от величины метрики.

Рис. 1
Рис. 2
Рис. 3

Источник света:

TypeSun
Color(255, 255, 255)
Specular1.00
Strength10.0
Location(10 m, -10 m, 20 m)
Rotation(30, 30, 0)

Камера:

Focal Length50mm

Render Engine: Eevee

Формат входного файла

Во входном файле содержатся x, y, z — координаты камеры в метрах и rx, ry, rz — углы поворота в радианах.

Формат выходного файла

В качестве решения следует отправлять файл формата OBJ (расширение .obj). Размер файла не должен превышать 999997 Байт. Единицы измерения должны соответствовать физическим величинам. Координаты вершин модели должны быть указаны в метрах.

Примеры тестов

Входной файл (input.txt) Выходной файл (output.png)
1
-0.408464 0.499149 0.265191
1.429877 0.014555 -2.484780
Смотри рис. 2
2
-0.056628 0.104147 -0.006480
-0.272270 -3.141593 0.689107
Смотри рис. 3

Разбор

Прежде чем моделировать скворечник необходимо определить из каких частей он состоит и какие примитивы можно использовать для эти целей.

Каждую полученную часть скворечника необходимо правильно расположить в соответствии с условием задачи. Важно не забыть про пивот. И перед экспортом модели в OBJ формат необходимо объединить все части скворечника путем CTRL+J, если используется Blender.


0.103s 0.010s 19