Вам понадобится
  • Лист бумаги, ручка.
Инструкция
1
Подготовьте исходные данные. В качестве исходных данных удобно принять отрезки, заданные координатами точек их концов в декартовой системе координат. В данной системе координатные оси ортогональны и имеют одинаковый линейный масштаб. Допустим, имеются отрезки O1 и O2. Отрезок O1 задан точками с координатами P11(x11, y11) и P12(x12, y12), а отрезок O2 задан точками с координатами P21(x21, y21) и P22(x22, y22).
2
Составьте уравнения прямых, к которым принадлежат отрезки O1 и O2. Уравнение прямой отрезка O1 будет иметь вид: K1*x+d1-y=0. Уравнение прямой отрезка O2 будет иметь вид: K2*x+d2-y=0. Здесь K1=(y12-y11)/(x12-x11), d1=(x12*y11-x11*y12)/(x12-x11), K2=(y22-y21)/(x22-x21), d2=(x22*y21-x21*y22)/(x22-x21).
3
Решите систему уравнений, состоящую из уравнений прямых, составленных на предыдущем шаге. Вычтя из первого уравнения второе, можно получить: K1*x-K2*x+d1-d2=0. Откуда x=(d2-d1)/(K1-K2). Подставив x в первое уравнение, получим: y=K1*(d2-d1)/(K1-K2)+d1. Значения K1, K2, d1, d2 известны. Точка P(x, y) является пересечением прямых, на которых лежат исходные отрезки.
4
Проверьте, является ли точка с найденными координатами точкой пересечения именно отрезков, а не прямых, на которых они лежат. Для этого убедитесь, что координата точки x принадлежит одновременно диапазонам значений [x11,x12] и [x21,x22], а координата y принадлежит одновременно диапазонам [y11,y12] и [y21,y22].