Как вычислить точку пересечения двух прямых. Простейшие задачи с прямой на плоскости

Точка пересечения прямых

Пусть нам даны две прямые, заданные своими коэффициентами и . Требуется найти их точку пересечения, или выяснить, что прямые параллельны.

Решение

Если две прямые не параллельны, то они пересекаются. Чтобы найти точку пересечения, достаточно составить из двух уравнений прямых систему и решить её:

Пользуясь формулой Крамера, сразу находим решение системы, которое и будет искомой точкой пересечения :



Если знаменатель нулевой, т.е.

то система решений не имеет (прямые параллельны и не совпадают) или имеет бесконечно много (прямые совпадают ). Если необходимо различить эти два случая, надо проверить, что коэффициенты прямых пропорциональны с тем же коэффициентом пропорциональности, что и коэффициенты и , для чего достаточно посчитать два определителя, если они оба равны нулю, то прямые совпадают:

Реализация

struct pt {double x, y;}; struct line {double a, b, c;}; constdouble EPS =1e-9; double det (double a, double b, double c, double d){return a * d — b * c;} bool intersect (line m, line n, pt & res){double zn = det (m.a, m.b, n.a, n.b);if(abs(zn)< EPS)returnfalse; res.x=- det (m.c, m.b, n.c, n.b)/ zn; res.y=- det (m.a, m.c, n.a, n.c)/ zn;returntrue;} bool parallel (line m, line n){returnabs(det (m.a, m.b, n.a, n.b))< EPS;} bool equivalent (line m, line n){returnabs(det (m.a, m.b, n.a, n.b))< EPS &&abs(det (m.a, m.c, n.a, n.c))< EPS &&abs(det (m.b, m.c, n.b, n.c))< EPS;}

Урок из серии «Геометрические алгоритмы »

Здравствуйте, дорогой читатель.

Совет 1: Как найти координаты точки пересечения двух прямых

Напишем еще три новые функции.

Функция LinesCross() будет определять, пересекаются ли два отрезка . В ней взаимное расположение отрезков определяется с помощью векторных произведений. Для вычисления векторных произведений напишем функцию – VektorMulti().

Функция RealLess() будет использоваться для реализации операции сравнения “<” (строго меньше) для вещественных чисел.

Задача1. Два отрезка заданы своими координатами. Составить программу, которая определяет, пересекаются ли эти отрезки , не находя точку пересечения.

Решение
. Второй задан точками .



Рассмотрим отрезок и точки и .

Точка лежит слева от прямой , для нее векторное произведение > 0, так как векторы положительно ориентированы.

Точка расположена справа от прямой, для нее векторное произведение < 0, так как векторы отрицательно ориентированы.

Для того чтобы точки и , лежали по разные стороны от прямой , достаточно, чтобы выполнялось условие < 0 (векторные произведения имели противоположные знаки).

Аналогичные рассуждения можно провести для отрезка и точек и .

Итак, если , то отрезки пересекаются.

Для проверки этого условия используется функцию LinesCross(), а для вычисления векторных произведений – функция VektorMulti().

ax, ay – координаты первого вектора,

bx, by – координаты второго вектора.

Program geometr4; {Пересекаются ли 2 отрезка?} Const _Eps: Real=1e-4; {точность вычслений} var x1,y1,x2,y2,x3,y3,x4,y4: real; var v1,v2,v3,v4: real;function RealLess(Const a, b: Real): Boolean; {Строго меньше} begin RealLess:= b-a> _Eps end; {RealLess}function VektorMulti(ax,ay,bx,by:real): real; {ax,ay — координаты a bx,by — координаты b } begin vektormulti:= ax*by-bx*ay; end;Function LinesCross(x1,y1,x2,y2,x3,y3,x4,y4:real): boolean; {Пересекаются ли отрезки?} begin v1:=vektormulti(x4-x3,y4-y3,x1-x3,y1-y3); v2:=vektormulti(x4-x3,y4-y3,x2-x3,y2-y3); v3:=vektormulti(x2-x1,y2-y1,x3-x1,y3-y1); v4:=vektormulti(x2-x1,y2-y1,x4-x1,y4-y1); if RealLess(v1*v2,0) and RealLess(v3*v4,0) {v1v2<0 и v3v4<0, отрезки пересекаются} then LinesCross:= true else LinesCross:= false end; {LinesCross}begin {main} writeln(‘Введите координаты отрезков: x1,y1,x2,y2,x3,y3,x4,y4’); readln(x1,y1,x2,y2,x3,y3,x4,y4); if LinesCross(x1,y1,x2,y2,x3,y3,x4,y4) then writeln (‘Да’) else writeln (‘Нет’) end.

Результаты выполнения программы:

Введите координаты отрезков: -1 1 2 2.52 2 1 -1 3
Да.

Мы написали программу, определяющую, пересекаются ли отрезки, заданные своими координатами.

На следующем уроке мы составим алгоритм, с помощью которого можно будет определить, лежит ли точка внутри треугольника.

Уважаемый читатель.

Вы уже познакомились с несколькими уроками из серии «Геометрические алгоритмы». Все ли доступно написано? Я буду Вам очень признательна, если Вы оставите отзыв об этих уроках. Возможно, что-то нужно еще доработать.

С уважением, Вера Господарец.

Пусть даны два отрезка. Первый задан точками P 1 (x 1 ;y 1) и P 2 (x 2 ;y 2) . Второй задан точками P 3 (x 3 ;y 3) и P 4 (x 4 ;y 4) .

Взаимное расположение отрезков можно проверить с помощью векторных произведений:

Рассмотрим отрезок P 3 P 4 и точки P 1 и P 2 .

Точка P 1 лежит слева от прямой P 3 P 4 , для нее векторное произведение v 1 > 0 , так как векторы положительно ориентированы.
Точка P 2 расположена справа от прямой, для нее векторное произведение v 2 < 0 , так как векторы отрицательно ориентированы.

Для того чтобы точки P 1 и P 2 лежали по разные стороны от прямой P 3 P 4 , достаточно, чтобы выполнялось условие v 1 v 2 < 0 (векторные произведения имели противоположные знаки).

Аналогичные рассуждения можно провести для отрезка P 1 P 2 и точек P 3 и P 4 .

Итак, если v 1 v 2 < 0 и v 3 v 4 < 0 , то отрезки пересекаются.

Векторное произведение двух векторов вычисляется по формуле:

где:
ax , ay — координаты первого вектора,
bx , by — координаты второго вектора.

Уравнение прямой, проходящей через две различные точки, заданные своими координатами.

Пусть на прямой заданы две не совпадающие точки:P 1 с координатами (x 1 ;y 1) и P 2 с координатами (x 2 ; y 2) .

Пересечение прямых

Соответственно вектор с началом в точке P 1 и концом в точке P 2 имеет координаты (x 2 -x 1 , y 2 -y 1) . Если P(x, y) – произвольная точка на прямой, то координаты вектора P 1 P равны (x — x 1 , y – y 1).

С помощью векторного произведения условие коллинеарности векторов P 1 P и P 1 P 2 можно записать так:
|P 1 P,P 1 P 2 |=0 , т.е. (x-x 1)(y 2 -y 1)-(y-y 1)(x 2 -x 1)=0
или
(y 2 -y 1)x + (x 1 -x 2)y + x 1 (y 1 -y 2) + y 1 (x 2 -x 1) = 0

Последнее уравнение переписывается следующим образом:
ax + by + c = 0, (1)
где
a = (y 2 -y 1),
b = (x 1 -x 2),
c = x 1 (y 1 -y 2) + y 1 (x 2 -x 1)

Итак, прямую можно задать уравнением вида (1).

Как найти точку пересечения прямых?
Очевидное решение состоит в том, чтобы решить систему уравнений прямых:

ax 1 +by 1 =-c 1
ax 2 +by 2 =-c 2
(2)

Ввести обозначения:

Здесь D – определитель системы, а D x ,D y — определители, получающиеся в результате замены столбца коэффициентов при соответствующем неизвестном столбцом свободных членов. Если D ≠ 0 , то система (2) является определенной, то есть имеет единственное решение. Это решение можно найти по следующим формулам: x 1 =D x /D, y 1 =D y /D , которые называются формулами Крамера. Небольшое напоминание, как вычисляется определитель второго порядка. В определителе различают две диагонали: главную и побочную. Главная диагональ состоит из элементов, взятых по направлению от верхнего левого угла определителя в нижний правый угол. Побочная диагональ – из правого верхнего в нижний левый. Определитель второго порядка равен произведению элементов главной диагонали минус произведение элементов побочной диагонали.

Перпендикулярная прямая

Это задача наверное одна из самых популярных и востребованных в школьных учебниках. Задачи, основанные на эту тему многообразны. Это и определение точки пересечения двух прямых, это и определение уравнения прямой, проходящяя через точку на исходной прямой под каким либо углом.

Эту тему мы раскроем, используя в своих вычислениях данные полученные с помощью

Именно там было рассмотрено преобразование общего уравнения прямой, в уравнение с угловым коэффициентом и обратно, и определения остальных парметров прямой по заданным условиям.

Что же нам не хвататет для того, что бы решать те задачи, которым посвящена эта страница?

1. Формулы вычисления одного из углов между двумя пересекающимися прямыми.

Если мы имеем две прямые которые заданы уравнениями:

то один из углов вычисляется так:

2. Уравнение прямой с угловым коэффициентом, проходящяя через заданную точку

Из формулы 1, мы можем увидеть два пограничных состояния

а) когда тогда и следовательно эти две заданные прямые паралельны (или совпадают)

б) когда , тогда , и следовательно эти прямые перпендикулярны, то есть пересекаются под прямым углом.

Какие могут быть исходные данные для решения подобных задач, кроме заданной прямой?

Точка на прямой и угол под которым вторая прямая его пересекает

Второе уравнение прямой

Какие же задачи может позволить решить бот?

1. Заданы две прямые (явным или не явным образом например по двум точкам). Вычислить точку пересечения и углы по которыми они пересекаются.

2. Задана одна прямая, точка на прямой и один угол. Определить уравнение прямой, перескающую заданную под указанным углом

Примеры

Две прямые заданы уравнениями. Найти точку пересечения этих прямых и углы под которым они пересекаются

line_p A=11;B=-5;C=6,k=3/7;b=-5

Получаем следующий результат

Уравнение первой прямой

y = 2.2 x + (1.2)

Уравнение второй прямой

y = 0.4285714285714 x + (-5)

Угол пересечения двух прямых(в градусах)

-42.357454705937

Точка пересечения двух прямых

x = -3.5

y = -6.5


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

Прямая проходит через две точки (1:-4) и (5:2) . Найти уравнение прямой, которая проходит через точку (-2:-8) и пересекает исходную прямую под углом 30 градусов.

Одна прямая нам известна, так как известны две точки через которые она проходит.

Осталось определить уравнение второй прямой. Одна точка нам известна, а вместо второй указан угол, под которым первая прямая пересекает вторую.

Вроде все известно, но тут главное не ошибится. Речь идет об угле(30 градусов) не между осью абсцисс и линией, а между первой и второй линией.

Для этого мы постим так. Определим параметры первой линии, и узнаем под каким углом она пересекает ось абсцисс.

line xa=1;xb=5;ya=-4;yb=2

Общее уравнение Ax+By+C = 0

Коэффициент А = -6

Коэффициент B = 4

Коэффициент C = 22

Коэффициент a= 3.6666666666667

Коэффициент b = -5.5

Коэффициент k = 1.5

Угол наклона к оси (в градусах) f = 56.309932474019

Коэффициент p = 3.0508510792386

Коэффициент q = 2.5535900500422

Расстояние между точками=7.211102550928

Видим что первая линия пересекает ось под углом 56.309932474019 градусов.

В искходных данных не сказано как именно пересекает вторая линия, первую. Можно ведь построить две линии удовлетворяющих условиям, первая повернутая на 30 градусов ПО часовой стрелке, а вторая на 30 градусов ПРОТИВ часовой стрелке.

Давайте их и посчитаем

Если вторая линия повернута на 30 градусов ПРОТИВ часовой стрелке, то вторая линия будет иметь градус пересечения с осью абсцисс 30+56.309932474019 = 86 .309932474019 градусов

line_p xa=-2;ya=-8;f=86.309932474019

Параметры прямой линии по заданным параметрам

Общее уравнение Ax+By+C = 0

Коэффициент А = 23.011106998916

Коэффициент B = -1.4840558255286

Коэффициент C = 34.149767393603

Уравнение прямой в отрезках x/a+y/b = 1

Коэффициент a= -1.4840558255286

Коэффициент b = 23.011106998916

Уравнение прямой c угловым коэфициентом y = kx + b

Коэффициент k = 15.505553499458

Угол наклона к оси (в градусах) f = 86.309932474019

Нормальное уравнение прямой x*cos(q)+y*sin(q)-p = 0

Коэффициент p = -1.4809790664999

Коэффициент q = 3.0771888256405

Расстояние между точками=23.058912962428

Расстояние от точки до прямой li =

то есть наше уравнение второй линии есть y=15.505553499458x + 23.011106998916

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

Таким образом, для того чтобы найти координаты точки пересечения двух прямых, следует решить систему уравнений

Пример 1. Найти точку пересечения прямых и

Решение. Координаты искомой точки пересечения мы найдем, решив систему уравнений

Точка пересечения М имеет координаты

Покажем, как построить прямую по ее уравнению. Для построения прямой достаточно знать две ее точки. Чтобы построить каждую из этих точек, мы задаемся произвольным значением одной из ее координат, а затем из уравнения находим соответствующее значение другой координаты.

Если в общем уравнении прямой оба коэффициента при текущих координатах не равны нулю , то для построения этой прямой лучше всего находить точки ее пересечения с осями координат.

Пример 2. Построить прямую .

Решение. Находим точку пересечения данной прямой с осью абсцисс. Для этого решаем совместно их уравнения:

и получаем . Таким образом, найдена точка М (3; 0) пересечения данной прямой с осью абсцисс (рис. 40).

Решая затем совместно уравнение данной прямой и уравнение оси ординат

мы находим точку пересечения прямой с осью ординат. Наконец, строим прямую по ее двум точкам М и


При решении некоторых геометрических задач методом координат приходится находить координаты точки пересечения прямых. Наиболее часто приходится искать координаты точки пересечения двух прямых на плоскости, однако иногда возникает необходимость в определении координат точки пересечения двух прямых в пространстве. В этой статье мы как раз разберемся с нахождением координат точки, в которой пересекаются две прямые.

Навигация по странице.

Точка пересечения двух прямых – определение.

Давайте для начала дадим определение точки пересечения двух прямых.

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

Рассмотрим решение примера.

Пример.

Найдите точку пересечения двух прямых, определенных в прямоугольной системе координат на плоскости уравнениями x-9y+14=0 и 5x-2y-16=0 .

Решение.

Нам даны два общих уравнения прямых, составим из них систему: . Решения полученной системы уравнений легко находятся, если разрешить ее первое уравнение относительно переменной x и подставить это выражение во второе уравнение:

Найденное решение системы уравнений дает нам искомые координаты точки пересечения двух прямых.

Ответ:

M 0 (4, 2) x-9y+14=0 и 5x-2y-16=0 .

Итак, нахождение координат точки пересечения двух прямых, определенных общими уравнениями на плоскости, сводится к решению системы из двух линейных уравнений с двумя неизвестными переменными. А как же быть, если прямые на плоскости заданы не общими уравнениями, а уравнениями другого вида (смотрите виды уравнения прямой на плоскости)? В этих случаях можно сначала привести уравнения прямых к общему виду , а уже после этого находить координаты точки пересечения.

Пример.

и .

Решение.

Перед нахождением координат точки пересечения заданных прямых приведем их уравнения к общему виду. Переход от параметрических уравнений прямой к общему уравнению этой прямой выглядит следующим образом:

Теперь проведем необходимые действия с каноническим уравнением прямой :

Таким образом, искомые координаты точки пересечения прямых являются решением системы уравнений вида . Используем для ее решения :

Ответ:

M 0 (-5, 1)

Существует еще один способ нахождения координат точки пересечения двух прямых на плоскости. Его удобно применять, когда одна из прямых задана параметрическими уравнениями вида , а другая – уравнением прямой иного вида. В этом случае в другое уравнение вместо переменных x и y можно подставить выражения и , откуда можно будет получить значение , которое соответствует точке пересечения заданных прямых. При этом точка пересечения прямых имеет координаты .

Найдем координаты точки пересечения прямых из предыдущего примера этим способом.

Пример.

Определите координаты точки пересечения прямых и .

Решение.

Подставим в уравнение прямой выражения :

Решив полученное уравнение, получаем . Это значение соответствует общей точке прямых и . Вычисляем координаты точки пересечения, подставив в параметрические уравнения прямой:
.

Ответ:

M 0 (-5, 1) .

Для полноты картины следует обговорить еще один момент.

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

Можно, конечно, обойтись и без такой проверки, а сразу составить систему уравнений вида и решить ее. Если система уравнений имеет единственное решение, то оно дает координаты точки, в которой исходные прямые пересекаются. Если система уравнений решений не имеет, то можно делать вывод о параллельности исходных прямых (так как не существует такой пары действительных чисел x и y , которая бы удовлетворяла одновременно обоим уравнениям заданных прямых). Из наличия бесконечного множества решений системы уравнений следует, что исходные прямые имеют бесконечно много общих точек, то есть, совпадают.

Рассмотрим примеры, подходящие под эти ситуации.

Пример.

Выясните, пересекаются ли прямые и , и если пересекаются, то найдите координаты точки пересечения.

Решение.

Заданным уравнениям прямых соответствуют уравнения и . Решим систему, составленную из этих уравнений .

Очевидно, что уравнения системы линейно выражаются друг через друга (второе уравнение системы получается из первого умножением обеих его частей на 4 ), следовательно, система уравнений имеет бесконечное множество решений. Таким образом, уравнения и определяют одну и ту же прямую, и мы не можем говорить о нахождении координат точки пересечения этих прямых.

Ответ:

Уравнения и определяют в прямоугольной системе координат Oxy одну и ту же прямую, поэтому мы не можем говорить о нахождении координат точки пересечения.

Пример.

Найдите координаты точки пересечения прямых и , если это возможно.

Решение.

Условие задачи допускает, что прямые могут быть не пересекающимися. Составим систему из данных уравнений. Применим для ее решения , так как он позволяет установить совместность или несовместность системы уравнений, а в случае ее совместности найти решение:

Последнее уравнение системы после прямого хода метода Гаусса обратилось в неверное равенство, следовательно, система уравнений не имеет решений. Отсюда можно сделать вывод, что исходные прямые параллельны, и мы не можем говорить о нахождении координат точки пересечения этих прямых.

Второй способ решения.

Давайте выясним, пересекаются ли заданные прямые.

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

Ответ:

Координаты точки пересечения заданных прямых найти невозможно, так как эти прямые параллельны.

Пример.

Найдите координаты точки пересечения прямых 2x-1=0 и , если они пересекаются.

Решение.

Составим систему из уравнений, которые являются общими уравнениями заданных прямых: . Определитель основной матрицы этой системы уравнений отличен от нуля , поэтому система уравнений имеет единственное решение, что свидетельствует о пересечении заданных прямых.

Для нахождения координат точки пересечения прямых нам нужно решить систему:

Полученное решение дает нам координаты точки пересечения прямых, то есть, 2x-1=0 и .

Ответ:

Нахождение координат точки пересечения двух прямых в пространстве.

Координаты точки пересечения двух прямых в трехмерном пространстве находятся аналогично.

Рассмотрим решения примеров.

Пример.

Найдите координаты точки пересечения двух прямых, заданных в пространстве уравнениями и .

Решение.

Составим систему уравнений из уравнений заданных прямых: . Решение этой системы даст нам искомые координаты точки пересечения прямых в пространстве. Найдем решение записанной системы уравнений.

Основная матрица системы имеет вид , а расширенная - .

Определим А и ранг матрицы T . Используем

С помощю этого онлайн калькулятора можно найти точку пересечения прямых на плоскости. Дается подробное решение с пояснениями. Для нахождения координат точки пересечения прямых задайте вид уравнения прямых ("канонический", "параметрический" или "общий"), введите коэффициенты уравнений прямых в ячейки и нажимайте на кнопку "Решить". Теоретическую часть и численные примеры смотрите ниже.

×

Предупреждение

Очистить все ячейки?

Закрыть Очистить

Инструкция ввода данных. Числа вводятся в виде целых чисел (примеры: 487, 5, -7623 и т.д.), десятичных чисел (напр. 67., 102.54 и т.д.) или дробей. Дробь нужно набирать в виде a/b, где a и b (b>0) целые или десятичные числа. Примеры 45/5, 6.6/76.4, -7/6.7 и т.д.

Точка пересечения прямых на плоскости − теория, примеры и решения

1. Точка пересечения прямых, заданных в общем виде.

Oxy L 1 и L 2:

Построим расширенную матрицу:

Если B" 2 =0 и С" 2 =0, то система линейных уравнений имеет множество решений. Следовательно прямые L 1 и L 2 совпадают. Если B" 2 =0 и С" 2 ≠0, то система несовместна и, следовательно прямые параллельны и не имеют общей точки. Если же B" 2 ≠0, то система линейных уравнений имеет единственное решение. Из второго уравнения находим y : y =С" 2 /B" 2 и подставляя полученное значение в первое уравнение находим x : x =−С 1 −B 1 y . Получили точку пересечения прямых L 1 и L 2: M (x, y ).

2. Точка пересечения прямых, заданных в каноническом виде.

Пусть задана декартова прямоугольная система координат Oxy и пусть в этой системе координат заданы прямые L 1 и L 2:

Откроем скобки и сделаем преобразования:

Аналогичным методом получим общее уравнение прямой (7):

Из уравнений (12) следует:

Как найти точку пересечения прямых, заданных в каноническом виде описано выше.

4. Точка пересечения прямых, заданных в разных видах.

Пусть задана декартова прямоугольная система координат Oxy и пусть в этой системе координат заданы прямые L 1 и L 2:

Найдем t :

A 1 x 2 +A 1 m t +B 1 y 2 +B 1 p t +C 1 =0,

Решим систему линейных уравнений отностительно x, y . Для этого воспользуемся методом Гаусса . Получим:

Пример 2. Найти точку пересечения прямых L 1 и L 2:

L 1: 2x +3y +4=0, (20)
(21)

Для нахождения точки пересечения прямых L 1 и L 2 нужно решить систему линейных уравнений (20) и (21). Представим уравнения в матричном виде.