🎯 Цели занятия
- Повторить, что такое абсолютные координаты и зачем они нужны
- Понять ограничения абсолютных координат
- Изучить, что такое относительные координаты
- Научиться использовать относительные координаты в коде агента
📋 План занятия
| Этап занятия | Время | Что делаем |
|---|---|---|
| Орг. момент | 5 мин | Приветствие, настрой на занятие |
| Повторение: координаты | 10 мин | Вспоминаем абсолютные координаты |
| Проблема абсолютных координат | 10 мин | Почему нужны относительные координаты |
| Относительные координаты | 20 мин | Изучаем новый тип координат |
| Интерактивные задания | 15 мин | Закрепляем понимание |
| Практика | 20 мин | Применяем относительные координаты |
| Итоги | 10 мин | Проверяем знания |
| Итого | 90 мин | — |
1 Повторяем: абсолютные координаты
В прошлом занятии мы изучили абсолютные координаты — это точные координаты в мире Minecraft.
Например:
(100, 64, -50) — это конкретная точка в мире Minecraft.
🧠 Проверь память
Что означает координата Y = 64?
2 Проблема абсолютных координат
Абсолютные координаты — это отлично, но у них есть один недостаток.
Представь ситуацию:
- Ты хочешь поставить блок на 5 шагов перед агентом
- Но агент может быть в разных местах и смотреть в разные стороны
- Если использовать абсолютные координаты, нужно каждый раз вычислять: «Где сейчас агент? Куда он смотрит?»
-- Агент стоит в точке (10, 64, 20) и смотрит на восток
-- Чтобы поставить блок на 5 шагов вперёд, нужно:
разместить блок в положении (15, 64, 20) -- X + 5
-- А если агент стоит в точке (30, 64, 40)?
разместить блок в положении (35, 64, 40) -- X + 5
-- А если агент смотрит на юг?
разместить блок в положении (10, 64, 25) -- Z + 5
-- Нужно каждый раз знать точные координаты и направление!
3 Относительные координаты
Относительные координаты — это координаты, которые указываются относительно текущего положения агента или игрока.
Как записываются относительные координаты?
В коде Minecraft Education относительные координаты записываются с символом ~ (тильда) перед числом:
| Абсолютные координаты | Относительные координаты | Что означают |
|---|---|---|
(10, 64, 20) |
(~5, ~0, ~0) |
На 5 блоков вперёд (по X), на той же высоте, без смещения по Z |
(10, 68, 20) |
(~0, ~4, ~0) |
На 4 блока вверх, без смещения по X и Z |
(15, 64, 20) |
(~5, ~0, ~0) |
То же самое, но считается от текущей позиции агента |
(10, 64, 25) |
(~0, ~0, ~5) |
На 5 блоков вперёд (по Z), на той же высоте |
-- Относительные координаты в действии
-- Агент стоит где-то в мире
-- Поставить блок на 3 блока вперёд (по направлению агента)
разместить блок в положении (~3, ~0, ~0)
-- Поставить блок на 2 блока вверх
разместить блок в положении (~0, ~2, ~0)
-- Поставить блок на 4 блока влево (относительно агента)
разместить блок в положении (~0, ~0, ~-4)
-- Поставить блок на 3 блока вперёд, на 2 вверх, на 1 влево
разместить блок в положении (~3, ~2, ~-1)
Когда использовать относительные координаты?
- 🤖 Для агента — когда нужно, чтобы программа работала в любом месте мира
- 🏗️ Для строительства — когда строишь "от себя" (например, стена перед агентом)
- 🔄 В циклах — когда агент двигается и строит, а координаты меняются
- 📦 Для переносимых конструкций — чтобы построить одно и то же в разных местах
4 Интерактивные задания
🧠 Понимание относительных координат
Агент стоит в точке (10, 64, 20) и смотрит на восток. Какие координаты у точки (~5, ~3, ~-2)?
🔢 Преобразуй в абсолютные координаты
Агент стоит в точке (-20, 70, 30). Куда он поставит блок, если использовать координаты (~-5, ~-2, ~10)?
Нажми на вопрос — Алиса ответит тебе прямо сейчас!
Просто скажи: «Алиса, объясни разницу между абсолютными и относительными координатами»
🛠️ Практическое задание: строим с относительными координатами
Запусти Minecraft Education, создай плоский мир и выполни задания, используя относительные координаты.
Основное задание:
-
План действий:
1. Сначала передвинь агента:двигаться вперёд 5 раз
2. Теперь поставь блок:разместить блок стекло в положении (~0, ~2, ~0)
Важно: блок ставится относительно новой позиции агента!
⭐ Бонусное задание:
-
Алгоритм башни:
повторить 5 раз [
разместить блок камень в положении (~0, ~0, ~0)
подняться вверх
]
💡 Блок ставится под агента (на позиции, где он стоит), а затем агент поднимается на блок вверх!
📝 Проверь себя
1. Что такое относительные координаты?
2. Какой символ используется для относительных координат?
3. Агент стоит в точке (5, 64, 10). Куда он поставит блок с координатами (~3, ~2, ~-4)?
4. Какая запись означает «на 5 блоков вперёд, на той же высоте»?
5. Почему относительные координаты удобнее абсолютных для агента?
💭 Рефлексия
Напиши, что тебе понравилось, а что было сложно: