Как узнать что точки лежат на одной прямой
Вычислительная геометрия, или как я стал заниматься олимпиадным программированием. Часть 2
Вступление
Это вторая часть моей статьи посвящена вычислительной геометрии. Думаю, эта статья будет интереснее предыдущей, поскольку задачки будут чуть сложнее.
Начнем с взаимного расположения точки относительно прямой, луча и отрезка.
Задача №1
Определить взаимное расположении точки и прямой: лежит выше прямой, на прямой, под прямой.
Решение
Понятно, что если прямая задана своим уравнением ax + by + c = 0, то тут и решать нечего. Достаточно подставить координаты точки в уравнение прямой и проверить чему оно равно. Если больше нуля, то точка находится в верхней полуплоскости, если равна нулю, то точка находится на прямой и если меньше нуля, то точка находится в нижней полуплоскости. Интереснее случай, когда прямая задана, задана координатами двух точек назовем их P1(x1, y1), P2(x2, y2). В этом случае можно спокойно найти коэффициенты a, b и c и применить предыдущее рассуждение. Но надо сначала подумать, оно нам надо? Конечно, нет! Как я говорил косое произведения — это просто жемчужина вычислительной геометрии. Давайте применим его. Известно, что косое произведение двух векторов положительно, если поворот от первого вектора ко второму идет против часовой стрелки, равно нулю, если векторы коллинеарны и отрицательно, если поворот идет по часовой стрелки. Поэтому нам достаточно посчитать косое произведение векторов P1P2 и P1M и по его знаку сделать вывод.
Задача №2
Определить принадлежит ли точка лучу.
Решение
Давайте вспомним, что такое луч: луч — это прямая, ограниченная точкой с одной стороны, а с другой стороны бесконечная. То есть луч задается некоторой начальной точкой и любой точкой лежащей на нем. Пусть точка P1(x1, y1) — начало луча, а P2(x2, y2) — любая точка принадлежащая лучу. Понятно, что если точка принадлежит лучу, то она принадлежит и прямой проходящей через эти точки, но не наоборот. Поэтому принадлежность прямой является необходимым, но не достаточным условием для принадлежности лучу. Поэтому от проверки косового произведения нам никуда не деться. Для достаточного условия нужно вычислить еще и скалярное произведение тех же векторов. Если оно меньше нуля, то точка не принадлежит лучу, если же оно не отрицательно, то точка лежит на луче. Почему так? Давайте посмотрим на рисунок.
Итак, для того чтобы точка M(x, y) лежала на луче с начальной точкой P1(x1, y1), где P2(x2, y2) лежит на луче необходимо и достаточно выполнения двух условий:
1. [P1P2, P1M] = 0 – косое произведение (точка лежит на прямой)
2. (P1P2, P1M) ≥ 0 – скалярное произведение (точка лежит на луче)
Задача №3
Определить принадлежит ли точка отрезку.
Решение
Пусть точки P1(x1, y1), P2(x2, y2) концы заданного отрезка. Опять-таки необходимым условием принадлежности точки отрезку является ее принадлежность прямой проходящей через P1, P2. Далее нам нужно определить лежит ли точка между точками P1 и P2, для этого нам на помощь приходит скалярное произведение векторов только на этот раз других: (MP1, MP2). Если оно меньше либо равно нуля, то точка лежит на отрезке, иначе вне отрезка. Почему так? Посмотрим на рисунок.
Итак, для того чтобы точка M(x, y) лежала на отрезке с концами P1(x1, y1), P2(x2, y2) необходимо и достаточно выполнения условий:
1. [P1P2, P1M] = 0 – косое произведение (точка лежит на прямой)
2. (MP1,MP2) ≤ 0 – скалярное произведение (точка лежит между P1 и P2)
Задача №4
Взаимное расположение двух точек относительно прямой.
Решение
В этой задаче необходимо определить по одну или по разные стороны относительно прямой находятся две точки.
Если точки находятся по разные стороны относительно прямой, то косые произведения имеют разные знаки, а значит их произведение отрицательно. Если же точки лежат по одну сторону относительно прямой, то знаки косых произведений совпадают, значит, их произведение положительно.
Итак:
1. [P1P2, P1M1] * [P1P2, P1M2] 0 – точки лежат по одну сторону.
3. [P1P2, P1M1] * [P1P2, P1M2] = 0 – одна (или две) из точек лежит на прямой.
Кстати, задача об определении наличия точки пересечения у прямой и отрезка решается точно также. Точнее, это и есть эта же задача: отрезок и прямая пересекаются, когда концы отрезка находятся по разные стороны относительно прямой или когда концы отрезка лежат на прямой, то есть необходимо потребовать [P1P2, P1M1] * [P1P2, P1M2] ≤ 0.
Задача №5
Определить пересекаются ли две прямые.
Решение
Будем считать, что прямые не совпадают. Понятно, что прямые не пересекаются, только если они параллельны. Поэтому, найдя условие параллельности, мы можем, определить пересекаются ли прямые.
Допустим прямые заданы своими уравнениями a1x + b1y + c1 = 0 и a2x + b2y + c2 = 0. Тогда условие параллельности прямых заключается в том, что a1b2 — a2b1 = 0.
Если же прямые заданы точками P1(x1, y1), P2(x2, y2), M1(x3, y3), M2(x4, y4), то условие их параллельности заключается в проверки косого произведения векторов P1P2 и M1M2: если оно равно нулю, то прямые параллельны.
В общем, то когда прямые заданы своими уравнениями мы тоже проверяем косое произведение векторов (-b1, a1), (-b2, a2) которые называются направляющими векторами.
Задача №6
Определить пересекаются ли два отрезка.
Решение
Вот эта задача мне, действительно, нравится. Отрезки пересекаются тогда, когда, концы каждого отрезка лежат по разные стороны от другого отрезка. Посмотрим на рисунок:
Итак, нам нужно проверить, чтобы концы каждого из отрезков лежали по разные стороны относительного концов другого отрезка. Пользуемся косым произведением векторов. Посмотрите на первый рисунок: [P1P2, P1M2] > 0, [P1P2, P1M1] [P1P2, P1M2] * [P1P2, P1M1] 2 + b 2 ).
Задача №8
Расстояние от точки до луча.
Решение
Эта задача отличается от предыдущей тем, что в этом случае может получиться, так что перпендикуляр из точки не падает на луч, а падает на его продолжение.
В случае, когда перпендикуляр не падает на луч необходимо найти расстояние от точки до начала луча – это и будет ответом на задачу.
Теперь рассмотрим случай, когда центр второго круга O2 находится между точками O1 и C. В этом случае получим отрицательное значение величины d2. Использование отрицательного значения d2 приводит к отрицательному значению α. В этом случае необходимо для правильного ответа прибавить к α 2π.
Заключение
Ну вот и все. Мы рассмотрели не все, но наиболее часто встречаемые задачи вычислительной геометрии касающиеся взаимного расположения объектов.
Геометрия 7 класс.
Точка, прямая и отрезок
Казалось бы, что таким простым понятиям, как «точка» или «прямая», которые мы повседневно используем в жизни, крайне просто дать определения. Но на практике оказалось, что это не так.
Существует множество определений, которые давали знаменитые математики терминам «точка» и «прямая». За многие века ученые так и не пришли к единому определению.
Мы не будем приводить все определения точки и прямой. Остановимся на объяснениях, которые, на наш взгляд, наиболее простым образом их описывают.
Точка — элементарная фигура, не имеющая частей.
Прямая состоит из множества точек и простирается бесконечно в обе стороны.
То есть выражаясь геометрическими обозначениями, информацию о расположении прямой и точек на рисунке выше можно записать так:
Как обозначить прямую
Прямую обычно обозначают одной маленькой латинской буквой.
Прямую, на которой отмечены две точки, иногда обозначают по названиям этих точек большими латинскими точками.
Задача № 1 из учебника Атанасян 7-9 класс
Решение задачи
Опишем взаимное расположение точек и прямой.
Как обозначается пересечение прямых
Хотя на чертеже не видно, но прямые a и c тоже пересекаются (это становится ясно, если мысленно продолжить вниз прямые a и с ).
Прямые e и f не имеют общей точки — т.е. они не пересекаются.
Взаимное расположение прямой и точек
Через одну точку (·)A можно провести сколько угодно прямых.
Через две точки (·)A и (·)B можно провести только одну прямую.
Сколько общих точек имеют две прямые
Две прямые либо имеют только одну общую точку, либо не имеют общих точек.
Докажем утверждение выше. Для этого рассмотрим все возможные случаи расположения двух прямых.
Первый случай расположения прямых
На рисунке выше мы видим, что у прямых f и e нет общих точек, т.к. эти прямые не пересекаются.
Второй случай расположения прямых
Третий случай расположения прямых
Вывод: две прямые либо имеют только одну общую точку, либо не имеют общих точек.
Задача № 3 из учебника Атанасян 7-9 класс
Проведите три прямые так, чтобы каждые две из них пересекались. Обозначьте все точки пересечения этих прямых. Сколько получилось точек? Рассмотрите все возможные случаи.
Решение задачи
Проведём две прямые a и b так, чтобы эти две прямые пересекались, и обозначим точку пересечения.
Как мы видим, точка пересечения только одна. Мы можем провести третью прямую так, чтобы она тоже проходила через эту точку пересечения.
Мы убедились, что возможны оба варианта. Поэтому в ответе запишем их оба.
Ответ: точек пересечения получается одна или три.
Что такое отрезок
Отрезок — часть прямой, ограниченная двумя точками.
В отличии от прямой любой отрезок можно измерить. Т.е. каждый отрезок имеет длину.
Высшая математика. Шпаргалка
Настоящее издание поможет систематизировать полученные ранее знания, а также подготовиться к экзамену или зачету и успешно их сдать.
Оглавление
Приведённый ознакомительный фрагмент книги Высшая математика. Шпаргалка предоставлен нашим книжным партнёром — компанией ЛитРес.
2. Условие нахождения трех точек на одной прямой. Уравнение прямой. Взаимное расположение точек и прямой. Пучок прямых. Расстояние от точки до прямой
3. Пусть имеются точка М (х1, у1) и некоторая прямая L, представленная уравнением у = ах + с. Уравнение прямой, проходящей параллельно данной прямой L через данную точку М:
Если прямая L задана уравнением Ах + Ву + С = 0, то параллельная ей прямая, проходящая через точку М, описывается уравнением А(х — х1) + В(у — у1) = 0.
Уравнение прямой, проходящей перпендикулярно данной прямой L через данную точку М:
Если прямая L задана уравнением Ах + Ву + С = 0, то параллельная ей прямая, проходящая через точку М(х1, у1), описывается уравнением А (у — у1) — В(х — х1) = 0.
4. Пусть даны две точки А1 (х1, у1), А2 (х2, у2) и прямая, заданная уравнением Ах + Ву + С = 0. Взаимное расположение точек относительно этой прямой:
1) точки А1, А2 лежат по одну сторону от данной прямой, если выражения (Ах1 + Ву1 + С) и (Ах2 + Ву2 + С) имеют одинаковые знаки;
3) одна или обе точки А1, А2 лежат на данной прямой, если одно или оба выражения соответственно (Ах1 + + Ву1 + С) и (Ах2 + Ву2 + С) принимают нулевое значение.
5. Центральный пучок — это множество прямых, проходящих через одну точку М (х1, у1), называемую центром пучка. Каждая из прямых пучка описывается уравнением пучка у — у1 = к (х — х1) (параметр пучка к для каждой прямой свой).
Все прямые пучка можно представить уравнением: l(y — y1) = m(x — x1), где l, m — не равные одновременно нулю произвольные числа.
6. Пусть даны точка М (х1, у1) и прямая, заданная уравнением Ах + Ву + С = 0. Расстояние d от этой точки М до прямой:
Находятся ли точки на одной прямой
Известны координаты трех точек. Напишите программу, которая
определяет, находятся ли точки на одной прямой.
Помогите пожалуйста на питоне.
Заранее спасибо
А, В и С лежат на одной прямой. Напишите условие того, что точки А и В находятся по одну сторону от точки С
А, В и С лежат на одной прямой. Напишите условие того, что точки А и В находятся по одну сторону от.
Находятся ли обе точки на одной стороне прямой
Здравствуйте! Задача такова: Проверить, обе ли точки А(-5; 2) и B(2; 0) находятся на одной стороне.
Определить по какую сторону от прямой находятся точки
На плоскости задана прямая y=ax+b и 2 точки m1 и m2. Определить по какую сторону от прямой.
Определить находятся ли две точки по разные стороны от заданной прямой
Дана прямая y = kx + b с известными коэффициентами и координатами двух точек. Находятся ли эти.
Даны три точки А,В,С, лежащие на одной прямой. Определить расположение точки С относительно луча АВ
Подскажите в чем ошибка? Даны три точки А,В,С, лежащие на одной прямой. Определить расположение.
Даны три точки А,В,С, лежащие на одной прямой. Определить расположение точки С относительно луча АВ
Проверьте пожалуйста формулу для вычисления данной задачи, что не так? Даны три точки А,В,С.
Как определить находятся ли заданные точки выше этой прямой или ниже неё
Люди помогите плиз. Информатик задал:нужно задать уравнение прямой по 2 точкам, координаты которых.
Лежат ли 3 точки на прямой. Как определить, лежат ли точки на одной прямой
Очень часто при решения домашней работы возникает вопрос: когда 3 точки лежат на одной прямой, ответ очень прост и он лежит в основе геометрии.
Осуществить проверку того, что три точки лежат на одной прямой можно через составления уравнения, рассматриваемой прямой, которая проходит через две наугад выбранные точки из этих трех. И проверки того, что этому уравнению удовлетворяют координаты оставшейся из этих трех точек.
Есть разные виды уравнения прямой. Воспользуемся одним из простейших способов и рассмотрим его для конкретно заданных точек.
Это сделаем лишь для того, чтобы не решать поставленную задачу в общем виде, а чтобы дать ответ на вопрос лежат ли 3 именно эти точки с этими координатами на одной прямой. Сформулируем задачу: Необходимо проверить лежат ли точки A(-2;1), Б(0;3), В (5;-7) на одной прямой.
Решим поставленную задачу
Как известно, через любые две точки можно провести прямую, причем единственную. Вот и проведем мысленно эту прямую. Допустим, прямую АБ. Значит, решение нашей задачи свелось к тому, что нужно проверить: принадлежит ли точка В прямой АБ. Если окажется, что точка В принадлежит прямой АБ, то все точки из условия будут лежать на одной прямой. Если мы выясним, что точка В не принадлежит прямой АБ, то можно будет утверждать, что точки А, Б и В на одной прямой не лежат. Составим уравнение прямой АБ как уравнение прямой проходящей через две точки:
После преобразования получим:
Как видим, не получили верное числовое равенство. Значит в этом случае точки А, Б, В не лежат на одной прямой.
Пример, когда 3 точки лежат на одной прямой можно легко подобрать для этой задачи. Всего лишь точка В должна иметь координаты (0;3) или (-7;-4)
Инструкция
Совет 2: Как проверить, что точки не лежат на одной прямой
Инструкция
5. Разглядите 2-й вариант определения принадлежности точки примой: на данный раз надобно проверить принадлежит ли точка С(x,y) отрезку с концевыми точками В(x1,y1) и А(x2,y2), тот, что является частью прямой z.
6. Точки рассматриваемого отрезка опишите уравнением pOB+(1-p)OА=z, при условии, что 0?p?1. ОВ и ОА являются векторами. Если есть такое число p, которое огромнее либо равно 0, но поменьше либо равно 1, то pOB+(1-p)OА=С, а значит, точка С будет лежать на отрезке АВ. В отвратном случае, данная точка не будет принадлежать этому отрезку.
7. Распишите равенство pOB+(1-p)OА=С покоординатно: px1+(1-p)x2=x и py1+(1-p)y2=y.
8. Обнаружьте из первого уравнения число р и подставьте его значение во второе равенство. Если равенство будет соответствовать условиям 0?p?1, то точка С принадлежит отрезку АВ.
Обратите внимание!
Удостоверитесь в правильности расчетов!
Полезный совет
Дабы обнаружить k – угловой показатель прямой, надобно (y2 – y1)/(x2 – x1).
Инструкция
1. Начните с классического построения. Определите плоскость, в которой вы будете строить прямую. Пускай это будет плоскость листа бумаги. В зависимости от условий задачи расположите точки. Они могут быть произвольными, но не исключено, что задана какая-то система координат. Произвольные точки поставьте там, где вам огромнее понравится. Обозначьте их как А и В. С поддержкой линейки объедините их. Согласно аксиоме, через две точки неизменно дозволено провести прямую, притом только одну.
2. Начертите систему координат. Пускай вам даны координаты точки А (х1; у1). Дабы их обнаружить, нужно отложить по оси х надобное число и провести через подмеченную точку прямую, параллельную оси у. После этого отложите величину, равную у1, по соответствующей оси. Из подмеченной точки проведите перпендикуляр до его пересечения с первым. Место их пересечения и будет точкой А. Таким же образом обнаружьте точку В, координаты которой дозволено обозначить как (х2; у2). Объедините обе точки прямой.
3. В программе AutoCAD прямую дозволено возвести несколькими методами. Функция «по двум точкам» обыкновенно установлена по умолчании. Обнаружьте в верхнем меню вкладку «Основная». Вы увидите перед собой панель «Рисование». Обнаружьте кнопку с изображением прямой линии и нажмите на нее.
4. Прямую по двум точкам в этой программе дозволено возвести двумя методами. Поставьте курсор в надобную точку на экране и щелкните левой кнопкой мыши. После этого определите вторую точку, протяните туда линию и тоже щелкните мышкой.
5. AutoCAD разрешает также задать координаты обеих точек. Наберите в находящейся внизу командной строке (_xline). Нажмите Enter. Введите координаты первой точки и тоже нажмите на ввод. Верно также определите и вторую точку. Ее дозволено указать и щелчком мыши, поставив курсор в необходимую точку экрана.
6. В AutoCAD дозволено возвести прямую не только по двум точкам, но и по углу наклона. В контекстном меню «Рисование» выберите прямую, а после этого опцию «Угол». Начальную точку дозволено поставить щелчком мыши либо по координатам, как и в предыдущем методе. После этого задайте размер угла и нажмите на ввод. По умолчании прямая расположится под необходимым углом к горизонтали.
Совет 4: Как подтвердить, что точка не лежит в плоскости треугольника
Подтвердить, что точка не лежит в плоскости треугольника, дозволено легкой проверкой всех допустимых обстановок, тем больше что их не много. Не следует только забывать, что дозволено придти и к событию противоположному, то есть случаю, когда точка является внутренней для заданного треугольника.
Инструкция
1. Раньше чем искать решение поставленной задачи, читателю следует самому принять решение о принадлежности сторон треугольника. Считать их точки внешними для треугольника либо нет. На данной стадии считаем, что это область замкнутая, а следственно она включает свои границы. Для простоты разглядите «плоский случай», но не забывайте и о пространственном обобщении. Следственно типовые уравнения для прямых плоскости вида y=kx+b, применять не следует, по весьма мере в начале решения.
2. Выберите метод задания для сторон треугольника. Судя по постановке задачи, это не имеет твердого значения. Следственно считайте, что даны координаты его вершин A(xa, ya), B(xb, yb), C(xc, yc) (см. рис. 1.). Обнаружьте направляющие векторы сторон треугольника AB=
3. Следуя по оси 0х, проверьте выполнение неравенства xc?xo?хb. Если оно не исполнено, то точка теснее лежит вне пределов треугольника, потому что «не внутри» – это и есть «снаружи». Если же неравенство исполнено, то дальше проверьте честность xc
4. Проверьте выполнение неравенства уc?уo?уа. Если оно не объективно, то точка не лежит внутри треугольника. В отвратном случае обнаружьте ординату прямой, содержащей АB. у1=y(xo)=[(yb-ya)(xo-xa)]/(xb-xa)+ya. Также поступите с ординатой прямой для BC. у2=у(хо)=[(yс-yb)(xo-xb)]/(xc-xb)+yc. Составьте неравенство y2?yo?y1. Его выполнение разрешает сделать завершение о том, что заданная точка находится внутри треугольника. Если же это неравенство ложно, то она лежит вне его пределов, в частности в соответствии с рисунком.
Если точки А, B и С лежат на одной прямой, то больший из отрезков AB, ВС и АС равен сумме двух других. По условию больший из данных отрезков (отрезок АС) равен 5 см, а сумма двух других (AB+BC) равна 7 см. Поэтому точки А, B и С не лежат на одной прямой.
Если точки А, В, С лежат на одной прямой, то больший из отрезков АВ, ВС и АС равен сумме двух других. По условию больший из данных отрезков (АС =5 см), а АВ + ВС = 7 см, поэтому точки А, В, С не лежат на одной прямой.
1. Площадь ромба равна S. Найдите площадь четырехугольника, вершинами которого являются середины сторон ромба.
3. Медианы треугольника со сторонами 5 см, 6 см и 7 см пересекаются в точке О. Найдите расстояние от точки О до прямых, содержащих стороны треугольника.
4. Четырехугольник ABCD вписан в окружность. Известно, что угол ABD=30*, угол ACB=30*, угол BDC=20*. Найти углы четырехугольника ABCD.
1) Катеты прямоугольного треугольника равны 15см и 20см. Найдите длину окружности, диаметром которой является высота, проведенная к гипотенузе.
2) Площадь квадрата равна S. Найдите:
а) длину вписанной окружности
б) длину дуги, заключенной между двумя соседними точками касания.
в) площадь части квадрата, лежащей вне вписанной окружности.
1. Две окружности с центрами О и К имеют соответственно радиусы 4 и 8 см. Найдите радиусы окружностей, касающихся одновременно двух данных, если их центры лежат на прямой ОК, и отрезок ОК равен 6 см.
2. Высоты треугольника, пересекаясь в точке Н, образуют шесть углов с вершиной в точке Н. Определите эти углы, если углы данного треугольника равны: 50, 60, 70 градусов.