![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Определение Пересечений
nukeATK © (2003-07-20 00:27:00)
Надо наити точку пересечения луча с треугольником. Где мона наити работающий пример или почитать что-то, не подскажете?
заранее благодарен.
Marser (2003-07-20 11:54:00) [1]
> Где мона наити
И уже больше ничего не нуна! :-))
Ev_genus (2003-07-20 04:35:00) [2]
Пусть луч = точка + вектор. Тогда уравнение прямой в которой лежит луч будет иметь следующий вид
x=xp+xv*t
y=yp+yv*t
z=zp+zv*t
где (xp, yp, zp) - координаты точки выхода, а (xv, yv zv) - координаты вектора луча.
Построим уравнение плоскости, проходящей через заданний треугольник с вершинами (x1, y1, z1), (x2, y2, z2), (x3, y3, z3). Уравнение записивается через определитель
| x1-x2 y1-y2 z1-z2 |
| x1-x3 y1-y3 z1-z3 | = 0
| x1-x y1-y z1-z |
Для нахождения пересечения нужно подставить уравнение прямой в уравнение плоскости и найти значение параметра t, а затем подставив его обратно в уравнение прямой найти координаты.