![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Пересечение луча с треугольником
Vitas2 © (2003-07-21 10:09:00)
Как определить пересекается ли луч с треугольником и в какой точке?(в 3д координатах)
Sapersky_ (2003-07-29 11:47:00) [1]
http://geometryalgorithms.com/Archive/algorithm_0105/algorithm_0105.htm
i-C3H7OH (2003-07-24 22:57:00) [2]
если делать в лоб, то я бы сделал так:
1. нужно перейти в плоскость. напр так как советует это сделать Digitman ©.
или взять некоторую плоскость с нормалью луча и спроецировать на нее точки вершин.
2. перевести трехмерные координаты всех 4-х точек (3-х вершин и точки пересечения луча с плоскостью) в двумерные на плоскости.
3. Определить на плоскости лежит ли точка пересечения луча с плоскостью внутри треугольника.
может можно и по-проще. если интересно могу пояснить каждый шаг
Digitman (2003-07-21 17:18:00) [3]
1. Найти координаты пересечения прямой, которой принадлежит луч, с плоскостью, которой принадлежит треугольник.
2. Если имеется единственная точка пересечения И точка принадлежит мн-ву точек луча И точка принадлежит мн-ву точек, принадлежащих треугольнику, то луч пересекается с треугольником в точке с найденными координатами, иначе - не пересекается.