КурсыИИМатематикаКодФизикаО проекте и вопросы

TwiddleLab / Математика / Тригонометрия и волны

Поворот с тригонометрией

Урок 10 из 11 · 7 мин · Бесплатно, без аккаунта

Что ты узнаешь

  • Поворот на θ против часовой стрелки это матрица R(θ) = [cos θ, -sin θ; sin θ, cos θ].
  • Её столбцы это то, куда попадают î и ĵ: (cos θ, sin θ) и (-sin θ, cos θ).
  • Игра поворачивает корабль, пропуская каждую вершину через одну и ту же матрицу, поэтому форма никогда не сплющивается.

Начать урок

Как идёт урок

  1. Твоя игра поворачивает космический корабль на любой угол 60 раз в секунду.

    Какие четыре числа это делают? Сначала: поверни корабль на 90°. Куда попадёт его нос?

  2. Крути ручку и смотри, как поворачивается вся сетка.

    Карточка показывает матрицу поворота. Три цели: 90°, 180°, 30°.

  3. Тяни î по окружности.

    ĵ остаётся на четверть оборота впереди. Смотри на два столбца матрицы.

  4. Это матрица поворота.

    Поворот на θ отправляет î в (cos θ, sin θ), а ĵ в (-sin θ, cos θ), на четверть оборота впереди.

    Поставь их столбцами: R(θ) = [cos θ, -sin θ; sin θ, cos θ]. Любая точка (x, y) идёт в x × столбец 1 + y × столбец 2.

  5. Построй матрицу для поворота на 270°.

    Заполни четыре ячейки числами 0, 1 или -1, пока корабль не встанет на пунктирный контур.

    R(270°) = [cos 270°, -sin 270°; sin 270°, cos 270°] = [0, 1; -1, 0].

  6. Поверни точку (3, 1) на 90°.

    Нажми на точку сетки, куда она попадёт.

    R(90°) = [0, -1; 1, 0], поэтому (3, 1) идёт в (0 × 3 - 1 × 1, 1 × 3 + 0 × 1) = (-1, 3).

  7. Этот игровой код сплющивает корабль.

    Один знак неверный. Запусти, переверни неверный знак, запусти снова.

    Строка 1 матрицы R это (cos a, -sin a), поэтому x2 = x cos a - y sin a. С плюсом при 45° обе строки одинаковы, и корабль схлопывается в линию.

  8. Игра: турель.

    Три камня. Поворачивай ствол, пока он не нацелится на камень, потом «Огонь».

  9. R(θ) = [cos θ, -sin θ; sin θ, cos θ].

    Нарисуй свой корабль из клеток, потом поверни его матрицей.

Предыдущий урок: Теорема косинусов · Следующий урок: Проект: создай ноту синтезатора · Часть курса: Тригонометрия и волны

Уроки интерактивные и работают на JavaScript. Включи его, чтобы играть.

Loading TwiddleLab