Уроки, алгоритмы, программы, примеры

Вход на сайт

Материалы по разделам

Построения
на плоскости (2D)
Графика
в пространстве (3D)
Вычислительная
геометрия
Физическое
моделирование
Фрактальная
графика

Новые комментарии

Men dating men savoir faire out of, connection, and the beauty of relationships in their own unique way. https://analxxx... In a life that embraces distinctiveness and inclusivity, same-sex relationships keep found their place. Men who ancient men...
Пиривет сайт с работой закладчиком Работа ежедневные выплаты Если у вас небольшой доход или его вообще нет, то стоит обратить внимание на возможность подработки курьером. Это простая и хорошо оплачиваемая работа.
Последнее из блога https://fkmed.r... Оплата и доставка Условия возврата Гарантия качества https://fkmed.r... Медицинская одежда в розницу https://fkmed.r... Красота и свобода выбора https://fkmed.r... Как купить медицинский костюм в сети магазинов
Фамилия автора Вичек -- венг. Vicsek Tamás. Висекк это двойная не правильная транскрипция с венгерского на английски и с английского на русский. Поправьте пожалуйста.
Men dating men experience love, consistency, and the dream of relationships in their own unmatched way. https://voyeurp... In a superb that embraces diversity and inclusivity, same-sex relationships suffer with develop their place. Men who obsolete...

Счетчики и рейтинг

Рейтинг@Mail.ru Яндекс.Метрика

Псевдоскалярным (или косым) произведением векторов a и b на плоскости называют число

ab = |a|•|b|• sin(φ),

где φ - угол вращения (против часовой стрелки) от a к b. Если хотя бы один из векторов нулевой, то полагают ab = 0.

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

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

Основные свойства:
  1. Линейность: a ∧ (λb + μc) = λab + μac (λ, μ - произвольные вещественные числа).
  2. Антикоммутативность: ab != - ba.
  3. Ориентированная площадь треугольника ABC выражается формулой S = (ABAC) / 2, а его площадь равна модулю этой величины.
  4. ab = 0 - необходимое и достаточное условие коллинеарности ненулевых векторов на плоскости.
  5. Пусть заданы вектора a = (a1, a2), b = (b1, b2). Тогда их псевдоскалярное произведение равно ab = a1b2 - a2b1

Использование в геометрических задачах

Пример 1. Определить взаимное расположении точки и прямой: лежит выше прямой, на прямой, под прямой.

Косое произведение двух векторов положительно, если поворот от первого вектора ко второму идет против часовой стрелки, равно нулю, если векторы коллинеарны и отрицательно, если поворот идет по часовой стрелки. Поэтому достаточно посчитать косое произведение векторов P1P2 и P1M и по его знаку сделать вывод.

Пример 2. Определить, принадлежит ли точка отрезку.

Пусть точки 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).

Пример 3. Определить, пересекаются ли две прямые (прямые не совпадают).

Если прямые заданы точками P1(x1, y1), P2(x2, y2), M1(x3, y3), M2(x4, y4), то условие их параллельности заключается в проверки косого произведения векторов P1P2 и M1M2: если оно равно нулю, то прямые параллельны, иначе - пересекаются.

Пример 4. Определить, пересекаются ли два отрезка.

Отрезки пересекаются тогда, когда, концы каждого отрезка лежат по разные стороны от другого отрезка. Посмотрим на рисунок:

Необходимо проверить, лежат ли концы каждого из отрезков по разные стороны относительного концов другого отрезка. Применим косое произведение векторов. Посмотрим на первый рисунок: [P1P2, P1M2] * [P1P2, P1M1] < 0 и [M1M2, M1P1] * [M1M2, M1P2] < 0. Важно обратить внимание на строгое неравенство, потому что возможен случай, при котором произведение равно нулю, но отрезки не пересекаются (отрезки лежат на одной прямой, но не имеют общих точек). Поэтому необходимо проверить, принадлежит ли хотя бы один конец каждого отрезка другому.