Подскажите, как с минимальной потерей крови вычислить пересекаются или нет линии. code_16997.txt
Этот топик читают: Гость
Ответов: 875
Рейтинг: 322
|
|||
карма: 1 |
| ||
файлы: 1 | code_16997.txt [571B] [234] |
Ответов: 5446
Рейтинг: 323
|
|||
Использовать курс алгебры (9 или 10 класс, уравнение прямой на плоскости + решение системы двух линейных уравнений): если угловые коэффициенты не равны, то пересекаются в одной точке. Если равны, но свободные члены не равны - параллельны. Если все коэффициенты равны - то пересекаются в бесконечном множестве точек (совпадают).
|
|||
карма: 1 |
|
Ответов: 875
Рейтинг: 322
|
|||
iarspider, не хотелось использовать кучу X-Xn, Y-Yn. По всей видимости должна существовать какая-то формула привязанная именно к экрану или такой не существует?
|
|||
карма: 1 |
|
Ответов: 5446
Рейтинг: 323
|
|||
kamakama, уточни условие задачи: как заданы прямые, и прямые ли это (лучи, отрезки)?
|
|||
карма: 1 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
Насколько я понял - имеют ли две линии общую точку в пределах экрана.
|
|||
карма: 25 |
|
Ответов: 8939
Рейтинг: 824
|
|||
kamakama, если Вы имели ввиду не линии, а отрезки, то задача упрощается (можно избавиться от проверок деления на 0): code_17007.txt
![]() ![]() |
|||
карма: 19 |
| ||
файлы: 1 | code_17007.txt [3.9KB] [323] | ||
Голосовали: | Administrator, Tad |
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
видимо стоит сделать отдельный элемент для проверки пересечения двух отрезков
|
|||
карма: 27 |
|
Ответов: 2060
Рейтинг: 28
|
|||
Dilma писал(а): видимо стоит сделать отдельный элемент для проверки пересечения двух отрезковДа стоит. |
|||
карма: 1 |
|
Ответов: 875
Рейтинг: 322
|
|||
Леонид, спасибо. Оказывается это не так просто. Вот это хотел повторить, теперь что-то задумался... Задача - передвинь точки так, чтобы линии не пересекались.
|
|||
карма: 1 |
| ||
файлы: 1 | putanka.rar [6.9KB] [180] |
Ответов: 2060
Рейтинг: 28
|
|||
Как можно сделать колизию двух объектов с минимальной загрузкой процессора?
Мне в голову приходит только то, что можно фигуры разбить на маленькие квадраты и после проверять колизии маленьких квадратов. Будет не большая погрешность, но ей можно будет пренебречь. |
|||
карма: 1 |
| ||
файлы: 1 | Колизия.png [6.4KB] [643] |
Ответов: 8939
Рейтинг: 824
|
|||
Эдик, коллизия - столкновение по-русски? Малой кровью не обойдёшься особенно на рисунках, а не на формулах.
Разбивать фигуру математически лучше на треугольники. |
|||
карма: 19 |
|
Ответов: 2060
Рейтинг: 28
|
|||
Леонид писал(а): Эдик, коллизия - столкновение по-русски?Да. ------------ Дoбавленo в 23.57: Dilma, добавь ещё два компонента. 1. Пересечение: Отрезок и треугольник. http://algolist.manual.ru/maths/geom/intersect/linefacet3d.php 2. Пересечение: Два треугольника. http://algolist.manual.ru/maths/geom/intersect/tritri3d.php ------------ Дoбавленo в 02.54: 3. Пересечение: любого прямоугольника на плоскости. ORect - ORect. Определение столкновений между простейшими геометрическими объектами. http://doj-dp.narod.ru/CDArticle/CDArticle.html |
|||
карма: 1 |
|
Ответов: 8939
Рейтинг: 824
|
|||
Dilma, в приложении элемент CrossLine и пример.
kamakama, "путанку" можно сделать ![]() Эдик, линии на схеме исправил ![]() |
|||
карма: 19 |
| ||
файлы: 1 | crossline.rar [3.1KB] [199] | ||
Голосовали: | Administrator, Genius, filyaxxxcom, kamakama, MAV, Konst |
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
добавлено
|
|||
карма: 27 |
|
Гость
Ответов: 17029
Рейтинг: 0
|
|||
Редактировалось 4 раз(а), последний 2021-05-21 08:04:45 |
|||
карма: 0 |
|