|
22 / 56 / 9
Регистрация: 29.09.2011
Сообщений: 618
|
|
Пересечение треугольников14.12.2014, 03:24. Показов 13541. Ответов 49
Метки нет (Все метки)
Надо определить, пересекаютя ли треугольники. Наличие общей грани нельзя считать пересечением, но если один треугольник лежит внутри другого, то это пересечение.
Подойдёт ли мне алгоритм, описаный здесь: Пересечение треугольников в 3d (пятый пост)?
0
|
|
| 14.12.2014, 03:24 | |
|
Ответы с готовыми решениями:
49
Пересечение треугольников
|
|
35 / 17 / 10
Регистрация: 13.12.2014
Сообщений: 107
|
|
| 14.12.2014, 03:35 | |
|
А вам в пространстве надо? или на плоскости?
1
|
|
|
22 / 56 / 9
Регистрация: 29.09.2011
Сообщений: 618
|
|
| 14.12.2014, 04:50 [ТС] | |
|
на плоскости
0
|
|
|
343 / 343 / 331
Регистрация: 02.10.2014
Сообщений: 666
|
|||||||
| 14.12.2014, 05:43 | |||||||
|
Без него: Если хоть одна точка попала внутрь другого т-ка, то они пересекаются.
1
|
|||||||
|
22 / 56 / 9
Регистрация: 29.09.2011
Сообщений: 618
|
||
| 14.12.2014, 12:45 [ТС] | ||
0
|
||
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||
| 14.12.2014, 12:59 | ||
|
1
|
||
|
22 / 56 / 9
Регистрация: 29.09.2011
Сообщений: 618
|
|
| 14.12.2014, 15:19 [ТС] | |
|
То есть надо решать систему уравнений для всех сторон всех треугольников. Ещё остайтся возможность, что один лежит внутри другого. Может есть другой способ?
0
|
|
|
Модератор
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
|
||
| 14.12.2014, 15:32 | ||
![]() тупой цикл по трем сторонам, если хотя бы одна точка внутри, значит есть пересечение
1
|
||
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||||
| 14.12.2014, 15:42 | ||||
|
1
|
||||
|
22 / 56 / 9
Регистрация: 29.09.2011
Сообщений: 618
|
|
| 14.12.2014, 15:57 [ТС] | |
|
2 ValeryS:
Вот здесь никакая вершина не лежит внутри другого трегольника, а пересечение есть. И как же мне здесь картинку выложить, когда он ссылки цензурирует? Даже с панели редактирования не получается. Вот так сделаю, вмето пробела точка. [cut] 2 Mr.X: То есть, без решения СЛАУ никак?
1
|
|
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
|
| 14.12.2014, 16:03 | |
|
1
|
|
|
Модератор
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
|
||||
| 14.12.2014, 16:13 | ||||
|
можно вынести в исключения у "звезды Давида" все вершины снаружи, а пересечение есть ![]() но при пересечении найдется точка которая лежит внутри другого треугольника
1
|
||||
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||||
| 14.12.2014, 16:19 | ||||
|
то можно так проверить для сторон ab и cd: det(ab, ac) * det(ab, ad) < 0 && det(cd, cb) * det(cd, ca) < 0 где det(a, b) = a.x * b.y - a.y * b.x; Добавлено через 4 минуты
2
|
||||
|
Модератор
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
|
||||
| 14.12.2014, 22:23 | ||||
хотя автор об это умолчал у меня есть такая мысль что он сам не знает что такое
но поскольку в Си то тупой перебор, или я не прав ![]() на самом деле это решается просто методом Монте-Карло, но мне лень а чем не устраивает мое решение, если хоть одна точка на стороне внутри другого треугольника, то имеет место пересечение,за исключением
1
|
||||
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
|||
| 14.12.2014, 22:33 | |||
|
1
|
|||
|
Модератор
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
|
||
| 14.12.2014, 22:45 | ||
![]() отрезок есть массив конечных точек, следовательно он сам конечен шесть отрезков есть тоже конечная величина почему бесконечность? нет я догадываюсь что точка есть субстанция которая не имеет размеров, и с этой точки зрения отрезок есть бесконечный массив точек, но мы то находимся все таки в С++ а не в математике, и для нас точка есть конкретная величина, допустим пиксель
1
|
||
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||
| 14.12.2014, 22:51 | ||
|
0
|
||
|
22 / 56 / 9
Регистрация: 29.09.2011
Сообщений: 618
|
||
| 14.12.2014, 23:20 [ТС] | ||
|
0
|
||
|
Модератор
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
|
|||||
| 14.12.2014, 23:36 | |||||
|
Добавлено через 2 минуты решения конкретные и абстракнтныя, ничто не напоминает
1
|
|||||
|
22 / 56 / 9
Регистрация: 29.09.2011
Сообщений: 618
|
|||
| 14.12.2014, 23:54 [ТС] | |||
|
Вот здесь есть алгоритм: http://algolist.manual.ru/math... line2d.php
0
|
|||
| 14.12.2014, 23:54 | |
|
Помогаю со студенческими работами здесь
20
Определить пересечение треугольников Как определить пересечение 2-х треугольников в трехмерном пространстве?
Пересечение двух прямых и проверка на пересечение Пересечение двух треугольников Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
|
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git
main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели
8ATzM_2aurI
|
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2.
Задача: запретить редактирование документа, если он открыт у другого пользователя.
/ / . . .
|