Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Найти пересечение двух треугольников 
:(
    Опции темы
Гость_Алексей
Дата 9.11.2005, 14:39 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











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

1) Треугольники не пересекаются
2) Треугольники пересекаются и получается четырехугольник.
3) Треугольники пересекаются и в результате получается тоже треугольник.

1 и 2 - НЕ НАДО.
Какой есть способ реализации 3-его пункта? Перебором не хочется решать. Там около 10 вариантов пересечений.
  Вверх
DENNN
Дата 9.11.2005, 15:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 1
Всего: 43



искать точки пересечения прямых, образующих треугольники.
PM ICQ   Вверх
Empirik
Дата 14.11.2005, 15:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 156
Регистрация: 28.10.2005
Где: Россия, Пермь

Репутация: нет
Всего: 1



А как поступить исли треугольники заданны произвольным точками в трехмерном пространстве.
И как учесть, что один треугольник может просто протыкать другой?
--------------------
Постоянно удивляюсь человеческой фантазии напридумывают гаджетов
PM MAIL WWW ICQ   Вверх
III.nfo
Дата 14.11.2005, 19:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 39
Регистрация: 18.10.2004

Репутация: 2
Всего: 2



Может быть, можно составить массивы с всеми точками попарно двух сторон (третья сторона содержится в последней паре, первая пара - два одинаковых числа) с двумя постоянными координатами (пример row1 [2,24; 5.253] и row2 [3,01; 8]). Затем сравнивать - если
row1[1] >= row2[1] и row2[1] <= row1[2] или
row1[1] >= row2[2] и row2[2] <= row1[2], то протыкает.
Надеюсь, предполагаю верно...
ТЕ надо перебрать n*m вариантов, где n,m - точки сторон. Возможно, есть какие-то оптимизации.
PM MAIL WWW   Вверх
DENNN
Дата 15.11.2005, 15:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 1
Всего: 43



Цитата(Empirik @ 14.11.2005, 15:15)
А как поступить исли треугольники заданны произвольным точками в трехмерном пространстве.
И как учесть, что один треугольник может просто протыкать другой?

Нужно сначала четко сформулировать задачу, что необходимо получить.

Это сообщение отредактировал(а) DENNN - 15.11.2005, 15:26
PM ICQ   Вверх
Guest
Дата 16.11.2005, 13:17 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Гдето в трехмерном прстранстве находятся два треугольнка. Каждый из треугольников состоит из задется тремя точками. Нужно определить пересекаются эти два треугольника в пространстве или нет. Если пересекаются, то вычислить координаты точек персечения треугольников.
  Вверх
DENNN
Дата 17.11.2005, 13:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 1
Всего: 43



Найти линию пересечения двух плоскостей, образованных точками теругольников. Проверить для кажого треугольника, проходит ли линия пересечения через треугольник и в каких точках пересекает стороны треугольника. если получилось два отрезка то проверить, что они "перекрываются".
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0439 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.