Свой рейтрейсер · Шаг 4 из 5
Шахматный пол
Шары висят над серой пустотой — непонятно, где низ и как далеко. У первых трассировщиков восьмидесятых пол всегда был шахматный: клетки, уходящие к горизонту, сами рисуют перспективу. Каркас уже нашёл, куда луч упал на пол; осталось сказать, какая там клетка.
Что сделать
Скажите, какого цвета клетка шахматного пола под точкой (x, z).
Что приходит
xиz— где точка на полу: вправо-влево и вглубьrazmer— сторона клетки
Что вернуть
Целое 0 или 1: номер клетки по x плюс номер по z, по модулю 2; номер — x / razmer, округлённое вниз.
Допишите функцию kletka_pola в редакторе справа.
Результат верните через return — то, что
напечатано, на проверку не влияет.
с графикой когда тесты пройдут, ответ вашей функции нарисуется · все задачи с графикой
В проекте
Каркас зовёт kletka_pola для каждой точки, где луч упал на пол: 0 — светлая клетка, 1 — тёмная. Решите шаг — и под шарами ляжет шахматный пол до самого горизонта.
kletka_pola(0.5, 0.5, 1)
0
Пол разбит на квадраты со стороной razmer. Номер клетки по x — x / razmer, округлённое вниз, к меньшему целому: у 0.5 — 0, у −0.5 — −1, у −1.5 — −2. Так же по z.
Ответ — сумма двух номеров по модулю 2, целым числом: 0 или 1. Клетка, где оба номера нулевые, — 0.
Обсуждение
Вопросов пока нет.
Войдите, чтобы спросить.