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

Вход на сайт

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

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

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

Пиривет сайт с работой закладчиком Работа курьером Значение финансов в повседневной жизни известно каждому, но что делать, если зарплата на постоянной работе невелика или ее вообще нет? Если у Вас нет профессии или возникли иные сложности, то...
Модные тренды медицинской одежды - новая эра стиля и комфорта в 2024 году https://fkmed.r... C нами Вы убедитесь: качественная, комфортная и модная медицинская одежда существует! В каталоге на сайте представлена медицинская одежда для врачей и...
14 070 руб https://www.eco... 38 900 руб https://www.eco... и выберите из списка ниже: Купить в 1 клик https://www.eco... По типу двигателя снегоотбрасыватель может быть: Купить в 1 клик https://www.eco...
Все изделия хорошо сидят на фигуре и отличаются высокой степенью комфортности https://fkmed.r... Комбинированные ткани с применением хлопка и синтетики - это оптимальный вариант для пошива формы https://fkmed.r... Специальная пропитка...
53 990 руб https://www.eco... Экономия 4 160 руб https://www.eco... Купить в 1 клик https://www.eco... Главными элементами устройства являются двигатель, металлический или пластиковый корпус и лопасти для уборки снега https://www.eco... Тип...

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

Рейтинг@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. Важно обратить внимание на строгое неравенство, потому что возможен случай, при котором произведение равно нулю, но отрезки не пересекаются (отрезки лежат на одной прямой, но не имеют общих точек). Поэтому необходимо проверить, принадлежит ли хотя бы один конец каждого отрезка другому.