Эврика!

Регистрация

Как найти точку, симметричную относительно прямой

Пусть даны некоторая прямая, заданная линейным уравнением, и точка, заданная своими координатами (x0, y0) и не лежащая на этой прямой. Требуется найти точку, которая была бы симметрична данной точке относительно данной прямой, то есть совпадала бы с ней, если плоскость мысленно согнуть пополам вдоль этой прямой.Как найти точку, симметричную относительно прямой

Ясно, что обе точки — заданная и искомая — должны лежать на одной прямой, причем эта прямая должна быть перпендикулярна данной. Таким образом, первая часть задачи заключается в том, чтобы найти уравнение прямой, которая была бы перпендикулярна некоторой данной прямой и при этом проходила бы через данную точку.

Прямая может быть задана двумя способами. Каноническое уравнение прямой выглядит так: Ax + By + C = 0, где A, B, и C — константы. Также прямую можно определить при помощи линейной функции: y = kx + b, где k — угловой коэффициент, b — смещение.
Эти два способа взаимозаменяемы, и от любого можно перейти к другому. Если Ax + By + C = 0, то y = - (Ax + C)/B. Иными словами, в линейной функции y = kx + b угловой коэффициент k = -A/B, а смещение b = -C/B. Для поставленной задачи удобнее рассуждать, исходя из канонического уравнения прямой.

Если две прямые перпендикулярны друг другу, и уравнение первой прямой Ax + By + C = 0, то уравнение второй прямой должно выглядеть Bx - Ay + D = 0, где D — константа. Чтобы найти конкретное значение D, нужно дополнительно знать, через какую точку проходит перпендикулярная прямая. В данном случае это точка (x0, y0).
Следовательно, D должно удовлетворять равенству: Bx0 - Ay0 + D = 0, то есть D = Ay0 - Bx0.

После того как перпендикулярная прямая найдена, нужно вычислить координаты точки ее пересечения с данной. Для этого требуется решить систему линейных уравнений:
Ax + By + C = 0,

Bx - Ay + Ay0 - Bx0 = 0.
Ее решение даст числа (x1, y1), служащие координатами точки пересечения прямых.

Искомая точка должна лежать на найденной прямой, причем ее расстояние до точки пересечения должно быть равно расстоянию от точки пересечения до точки (x0, y0). Координаты точки, симметричной точке (x0, y0), можно, таким образом, найти, решив систему уравнений:
Bx - Ay + Ay0 - Bx0 = 0,

√((x1 - x0)^2 + (y1 - y0)^2 = √((x - x1)^2 + (y - y1)^2).

Но можно поступить проще. Если точки (x0, y0) и (x, y) находятся на равных расстояниях от точки (x1, y1), и все три точки лежат на одной прямой, то:
x - x1 = x1 - x0,

y - y1 = y1 - y0.
Следовательно, x = 2x1 - x0, y = 2y1 - y0. Подставив эти значения во второе уравнение первой системы и упростив выражения, легко убедиться, что правая его часть становится идентична левой. Дополнительно учитывать первое уравнение уже нет смысла, поскольку известно, что точки (x0, y0) и (x1, y1) ему удовлетворяют, а точка (x, y) заведомо лежит на той же прямой.

© CompleteRepair.Ru