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

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

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

Решение

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

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



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

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

Реализация

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 , которые называются формулами Крамера. Небольшое напоминание, как вычисляется определитель второго порядка. В определителе различают две диагонали: главную и побочную. Главная диагональ состоит из элементов, взятых по направлению от верхнего левого угла определителя в нижний правый угол. Побочная диагональ – из правого верхнего в нижний левый. Определитель второго порядка равен произведению элементов главной диагонали минус произведение элементов побочной диагонали.

Если две прямые не параллельны, то они неукоснительно пересекутся в одной точке. Обнаружить координаты точки пересечения 2-х прямых дозволено как графическим, так и арифметическим методом, в зависимости от того, какие данные предоставляет задача.

Вам понадобится

  • – две прямые на чертеже;
  • – уравнения 2-х прямых.

Инструкция

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

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

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

4. Если прямые заданы в виде формул у=kх+b, вы можете также решить задачу графическим методом: начертите прямые на координатной сетке и обнаружьте решение описанным выше методом.

5. Испробуйте обнаружить решение задачи, применяя данные формулы. Для этого составьте из этих уравнений систему и решите ее. Если уравнения даны в виде у=kх+b, примитивно приравняйте обе части с х и обнаружьте х. После этого подставьте значение х в одно из уравнений и обнаружьте у.

6. Дозволено обнаружить решение методом Крамера. В таком случае приведите уравнения к виду А1х+В1у+С1=0 и А2х+В2у+С2=0. Согласно формуле Крамера х=-(С1В2-С2В1)/(А1В2-А2В1), а у=-(А1C2-А2С1)/(А1В2-А2В1). Обратите внимание, если знаменатель равен нулю, то прямые параллельны либо совпадают и, соответственно, не пересекаются.

7. Если вам даны прямые в пространстве в каноническом виде, перед тем, как начать поиск решения, проверьте, не параллельны ли прямые. Для этого оцените показатели перед t, если они пропорциональны, скажем, x=-1+3t, y=7+2t, z=2+t и x=-1+6t, y=-1+4t, z=-5+2t, то прямые параллельны. Помимо того, прямые могут скрещиваться, в этом случае система не будет иметь решения.

8. Если вы узнали, что прямые пересекаются, обнаружьте точку их пересечения. Вначале приравняйте переменные из различных прямых, условно заменив t на u для первой прямой и на v для 2-й прямой. Скажем, если вам даны прямые x=t-1, y=2t+1, z=t+2 и x=t+1, y=t+1, z=2t+8 вы получите выражения типа u-1=v+1, 2u+1=v+1, u+2=2v+8.

9. Выразите из одного уравнения u, подставьте в другое и обнаружьте v (в данной задаче u=-2,v=-4). Сейчас, дабы обнаружить точку пересечения, подставьте полученные значения взамен t (без разницы, в первое либо второе уравнение) и получите координаты точки x=-3, y=-3, z=0.

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

Вам понадобится

  • уравнения прямых

Инструкция

1. В декартовых координатах всеобщее уравнение прямой выглидит так: Ax+By+C = 0. Пускай две прямые пересекаются. Уравнение первой прямой имеет вид Ax+By+C = 0, 2-й прямой – Dx+Ey+F = 0. Все показатели (A, B, C, D, E, F) обязаны быть заданы.Дабы обнаружить точку пересечения этих прямых надобно решить систему этих 2-х линейных уравнений.

2. Для решения первое уравнение комфортно умножить на E, а второе – на B. В итоге уравнения будут иметь вид: AEx+BEy+CE = 0, DBx+EBy+FB = 0. Позже вычитания второго уравнения из первого, получится: (AE-DB)x = FB-CE. Отсель, x = (FB-CE)/(AE-DB).По аналогии первое уравнение начальной системы дозволено умножить на D, второе – на A, после этого вновь из первого вычесть второго. В итоге, y = (CD-FA)/(AE-DB).Полученные значения x и y и будут координатами точки пересечения прямых .

3. Уравнения прямых также могут записываться через угловой показатель k, равный тангенсу угла наклона прямой. В этом случае уравнение прямой имеет вид y = kx+b. Пускай сейчас уравнение первой прямой – y = k1*x+b1, а 2-й прямой – y = k2*x+b2.

4. Если приравнять правые части этих 2-х уравнений, то получится: k1*x+b1 = k2*x+b2. Отсель легко получить, что x = (b1-b2)/(k2-k1). Позже подстановки этого значения x в всякое из уравнений, получится: y = (k2*b1-k1*b2)/(k2-k1). Значения x и y будут задавать координаты точки пересечения прямых .В случае, если две прямые параллельны либо сопадают, то они не имеют всеобщих точек либо имеют безмерно много всеобщих точек соответственно. В этих случаях k1 = k2, знаменатели для координат точек пересечения будут обращаться в нуль, следственно, система не будет иметь классического решения.Система может иметь только одно классическое решение, что безусловно, потому что две несовпадающие и не параллельные друг другу прямые могут иметь только одну точку пересечения .

Видео по теме

  1. Чтобы найти координаты точки пересечения графиков функций нужно приравнять обе функции друг к другу, перенести в левую часть все члена, содержащие $ x $, а в правую остальные и найти корни, полученного уравнения.
  2. Второй способ заключается в том, что нужно составить систему уравнений и решить её путём подстановки одной функции в другую
  3. Третий способ подразумевает графическое построение функций и визуальное определение точки пересечения.

Случай двух линейных функций

Рассмотрим две линейные функции $ f(x) = k_1 x+m_1 $ и $ g(x) = k_2 x + m_2 $. Эти функции называются прямыми. Построить их достаточно легко, нужно взять любые два значения $ x_1 $ и $ x_2 $ и найти $ f(x_1) $ и $ (x_2) $. Затем повторить тоже самое и с функцией $ g(x) $. Далее визуально найти координату точки пересечения графиков функций.

Следует знать, что линейные функции имеют только одну точку пересечения и только тогда, когда $ k_1 \neq k_2 $. Иначе, в случае $ k_1=k_2 $ функции параллельны друг другу, так как $ k $ - это коэффициент угла наклона. Если $ k_1 \neq k_2 $, но $ m_1=m_2 $, тогда точкой пересечения будет $ M(0;m) $. Это правило желательно запомнить для ускоренного решения задач.

Пример 1
Пусть даны $ f(x) = 2x-5 $ и $ g(x)=x+3 $. Найти координаты точки пересечения графиков функций.
Решение

Как это сделать? Так как представлены две линейные функции, то первым делом смотрим на коэффициент угла наклона обеих функций $ k_1 = 2 $ и $ k_2 = 1 $. Замечаем, что $ k_1 \neq k_2 $, поэтому существует одна точка пересечения. Найдём её с помощью уравнения $ f(x)=g(x) $:

$$ 2x-5 = x+3 $$

Переносим слагаемые с $ x $ в левую часть, а остальные в правую:

$$ 2x - x = 3+5 $$

Получили $ x=8 $ абциссу точки пересечения графиков, а теперь найдём ординату. Для этого подставим $ x = 8 $ в любое из уравнений хоть в $ f(x) $, либо в $ g(x) $:

$$ f(8) = 2\cdot 8 - 5 = 16 - 5 = 11 $$

Итак, $ M (8;11) $ - является точкой пересечения графиков двух линейных функций.

Если не получается решить свою задачу, то присылайте её к нам. Мы предоставим подробное решение. Вы сможете ознакомиться с ходом вычисления и почерпнуть информацию. Это поможет своевременно получить зачёт у преподавателя!

Ответ
$$ M (8;11) $$

Случай двух нелинейных функций

Пример 3
Найти координаты точки пересечения графиков функций: $ f(x)=x^2-2x+1 $ и $ g(x)=x^2+1 $
Решение

Как быть с двумя нелинейными функциями? Алгоритм простой: приравниваем уравнения друг к другу и находим корни:

$$ x^2-2x+1=x^2+1 $$

Разносим по разным сторонам уравнения члены с $ x $ и без него:

$$ x^2-2x-x^2=1-1 $$

Найдена абцисса искомой точки, но её недостаточно. Ещё нехватает ординаты $ y $. Подставляем $ x = 0 $ в любое из двух уравнений условия задачи. Например:

$$ f(0)=0^2-2\cdot 0 + 1 = 1 $$

$ M (0;1) $ - точка пересечения графиков функций

Ответ
$$ M (0;1) $$

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

×

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

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

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

Инструкция ввода данных. Числа вводятся в виде целых чисел (примеры: 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). Представим уравнения в матричном виде.