Калькулятор геометрических преобразований
Введите вершины набора точек или многоугольника, выберите до четырёх преобразований — перенос, отражение, поворот или гомотетию — и получите образ каждой точки, матрицу каждого шага и всей последовательности, а также график фигуры до и после преобразования. Стандартные углы, такие как 30°, 45° и 90°, остаются точными. Бесплатно, без регистрации, и ничего не покидает ваш браузер.
Три и более точки рисуются как многоугольник в порядке ввода.
Преобразования в порядке применения
Целые числа, десятичные дроби или дроби, например 3/4.
Результаты
1
Расстояния умножаются на
1
Коэффициент площади (определитель)
Сохраняется
Ориентация
3 → 3
Площадь многоугольника
Образы точек
| Точка | Исходная | Образ |
|---|---|---|
| A → A′ | (1, 1) | (−1, 1) |
| B → B′ | (4, 1) | (−1, 4) |
| C → C′ | (1, 3) | (−3, 1) |
Матрица преобразования
Каждый шаг — матрица 3 × 3, действующая на (x, y, 1). Матрицы перемножаются справа налево, поэтому первый шаг — самый правый множитель.
| 0 | −1 | 0 |
| 1 | 0 | 0 |
| 0 | 0 | 1 |
До и после
Синий — исходная фигура, оранжевый — итоговый образ, пунктир — фигура после каждого предыдущего шага, зелёным отмечены линия отражения и центр.
Как пользоваться калькулятором геометрических преобразований
- 1. Введите точки. Вводите по одной паре x, y в строке, не больше двенадцати. Три и более точек рисуются как многоугольник в порядке их перечисления.
- 2. Выберите преобразование. Каждый шаг — перенос, отражение, поворот или гомотетия, со своими настройками: сдвиг, прямая отражения, угол и центр или коэффициент масштаба и центр.
- 3. При необходимости объедините шаги. Добавьте до четырёх шагов; они применяются в показанном порядке. Пунктирные контуры на графике показывают фигуру после каждого предыдущего шага.
- 4. Смотрите образы, матрицы и график. Таблица перечисляет каждую точку и её образ; матрицы показывают преобразование в виде чисел; график накладывает исходную фигуру на результат.
Четыре преобразования: движения и подобие
| Преобразование | Правило для (x, y) | Что сохраняется |
|---|---|---|
| Перенос на (a, b) | (x + a, y + b) | Размер, форму, ориентацию и направление |
| Отражение в оси x | (x, −y) | Размер и форму; меняет ориентацию на противоположную |
| Отражение в оси y | (−x, y) | Размер и форму; меняет ориентацию на противоположную |
| Отражение в прямой y = x | (y, x) | Размер и форму; меняет ориентацию на противоположную |
| Поворот на θ вокруг начала координат | (x cos θ − y sin θ, x sin θ + y cos θ) | Размер, форму и ориентацию |
| Гомотетия с коэффициентом k относительно начала координат | (kx, ky) | Форму; длины умножаются на |k|, площади — на k² |
Преобразования относительно другого центра или другой прямой строятся из этих: сместите центр в начало координат, выполните преобразование и сдвиньте фигуру обратно.
Матрицы преобразований
Переносы не линейны, поэтому описать их матрицей 2 × 2 нельзя. Выход — однородные координаты: запишите точку как (x, y, 1) и используйте матрицы 3 × 3. Перенос на (a, b) становится матрицей со строками (1, 0, a), (0, 1, b), (0, 0, 1); поворот на θ — строками (cos θ, −sin θ, 0), (sin θ, cos θ, 0), (0, 0, 1); гомотетия с коэффициентом k — строками (k, 0, 0), (0, k, 0), (0, 0, 1). Поскольку каждый шаг — матрица, вся последовательность — одна матрица: произведение матриц шагов, где первый шаг стоит самым правым множителем. Поворот относительно центра (c, d) равен T(c, d) · R · T(−c, −d).
Определитель 2 × 2 части матрицы показывает, как меняются площади и отражена ли фигура. Определитель 1 сохраняет площадь и ориентацию (переносы и повороты); −1 сохраняет площадь, но меняет ориентацию (одно отражение); k² означает, что площади умножаются на квадрат коэффициента масштаба. Калькулятор выводит этот определитель вместе с коэффициентом, в который умножаются расстояния.
Примеры
Начнём с треугольника A(1, 1), B(4, 1), C(1, 3), площадь которого равна 3.
- Поворот на 90° против часовой стрелки вокруг начала координат. (x, y) переходит в (−y, x), то есть A′(−1, 1), B′(−1, 4), C′(−3, 1). Матрица: (0, −1, 0), (1, 0, 0), (0, 0, 1), определитель 1.
- Отражение в оси y. (x, y) переходит в (−x, y): A′(−1, 1), B′(−4, 1), C′(−1, 3). Определитель равен −1, поэтому ориентация меняется на противоположную.
- Перенос на (3, −2). A′(4, −1), B′(7, −1), C′(4, 1).
- Гомотетия с k = 2 относительно начала координат. A′(2, 2), B′(8, 2), C′(2, 6). Длины удваиваются, а площадь переходит из 3 в 12 = 3 × 2².
- Поворот на 45° вокруг начала координат. Точка (1, 0) переходит в (√2/2, √2/2), записанное точно.
- Порядок важен. Возьмём точку (1, 0). Поверните на 90°, затем перенесите на (1, 0): (1, 0) → (0, 1) → (1, 1). Сначала перенесите, затем поверните: (1, 0) → (2, 0) → (0, 2).
Отражение в других прямых
Для прямой y = mx + b калькулятор использует матрицу отражения относительно y = mx, то есть (1 − m², 2m; 2m, m² − 1), делённую на 1 + m², обёрнутую в переносы на b. Все элементы рациональны, поэтому результат точен. Вертикальная прямая x = c переводит x в 2c − x. Например, отражение начала координат в прямой y = x + 2 даёт (−2, 2), поскольку прямая — серединный перпендикуляр к отрезку, соединяющему точку и её образ.
Часто задаваемые вопросы
- Что такое геометрическое преобразование?
- Правило, которое переводит каждую точку плоскости в новое положение. Переносы сдвигают фигуру, отражения переворачивают её относительно прямой, повороты вращают вокруг центра, а гомотетии изменяют размер относительно центра. Первые три — жёсткие движения, сохраняющие расстояния; гомотетия сохраняет форму, но меняет размер.
- Как повернуть точку на 90 градусов вокруг начала координат?
- Против часовой стрелки (x, y) переходит в (−y, x); по часовой стрелке — в (y, −x). Для (3, 2) это даёт (−2, 3) против часовой стрелки и (2, −3) по часовой. Поворот на 180° переводит (x, y) в (−x, −y).
- Как повернуть вокруг точки, отличной от начала координат?
- Вычтите центр из точки, поверните результат вокруг начала координат, затем прибавьте центр обратно. Калькулятор делает это за вас через матрицу T(c) · R · T(−c), а также для гомотетий относительно выбранного центра.
- Что происходит с площадью при гомотетии?
- Длины умножаются на |k|, площади — на k². Коэффициент масштаба 3 делает фигуру втрое шире и увеличивает площадь в девять раз. Отрицательное k также переворачивает фигуру через центр — это то же, что гомотетия с |k| и поворот на 180°.
- Важен ли порядок преобразований?
- Обычно да. Умножение матриц не коммутативно, поэтому поворот с последующим переносом отличается от переноса с последующим поворотом, как в примере выше. Два поворота вокруг одного центра или два переноса коммутируют.
- Как отразить относительно прямой y = x?
- Поменяйте координаты местами: (x, y) переходит в (y, x). Отражение относительно y = −x переводит (x, y) в (−y, −x). Для любой другой прямой y = mx + b выберите этот вариант на шаге отражения и введите m и b.