Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
(|a| |b| sin(ab))
и совсем забил на чтение статьи сосредоточившись на коде.
Никогда бы не подумал, что бывают люди, считающие совпадающие отрезки непересекающимися…
Если Вы математику помните, то обозначения вроде (a, b), [a, b], и их комбинации Вам что-то об этом должны напомнить.
Ну во-первых то что вы описали не является алгоритмом
Является ли пересечением отрезок нулевой длины лежащий на другом отрезке
Если вы внимательно посмотрите на свой алгоритм, вы поймете, что он не отличает точку лежащую на отрезке и точку, лежащую на прямой, но не на отрезке. Эту разницу просто нельзя вычислить векторными произведениями, которые всегда нулевые, если все лежит на одной прямой.
В функции использован самодельный шаблон vector<typename, int>, который является шаблоном вектора размерностью int с компонентами типа typename.
Скажите, а вы всегда плавучку сравниваете при помощи ==?
Простой алгоритм определения пересечения двух отрезков