Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Serge Kanilo                         2:5020/400     12 May 2001  04:17:04
 To : All
 Subject : Re: пеpесечения
 -------------------------------------------------------------------------------- 
 
 "Stepan Polovnikov" <Stepan.Polovnikov@p47.f16.n5056.z2.fidonet.org> wrote
 in message news:989607375@p47.f16.n5056.z2.FIDOnet.ftn...
 
 > ER> С достоинствами согласен.
 >     Hет тут достоинств.
 > ER> А скоpость? Ты их не пpовеpял в деле?
 > Геометрическое решение быстрее.
 
 Принципиальной разницы нет, поскольку расписанное
 решение через уравнение второй степени приведет
 к тому же самому коду.
 
 > ;r-радиус сферы
 > ;с-центр сферы
 > ;o-точка луча
 > ;d-направление луча
 
 Hаправление имеет единичную длину, не так ли?
 Hе здесь ли кроется причина такой простоты?
 Ведь в этом случае уравнение будет
 
 t^2-2*(c-o)*d*t+(c-o)^2-r^2=0
 
 Как раз на корень и несколько умножений отличается
 от исходной задачи.
 
 > r2=r*r  ; расчитано ранее
 >
 > ; проверка пересечения
 > l=c-o
 > tca=l*d
 
 Явно готовимся к вычислению коэффициентов полинома.
 
 > m2=l*l-tca*tca
 > if (m2 > r2) return false
 
 Вот проверка на неотрицательность детерминанта if(tca*tca-l*l+r2<0).
 
 > ; определение расстояния
 > q=sqrt(r2-m2)
 
 Берем корень из детерминанта (все как в учебнике).
 
 > if (l2 > r2) t=tca-q
 > else t=tca+q
 
 А вот вроде и формула для вычисления корня.
 Если бы еще знать, что такое l2.
 
 > return t;
 
 Странно, программка то bool возвращает, то double, что за язык такой?  :-)
 Просто непонятно, что возвращается и как его потом анализировать.
 
 Cheers,
 
 Serge
 --- ifmail v.2.15dev5
  * Origin: Excite@Home - The Leader in Broadband http://home.com/f (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: пеpесечения   Serge Kanilo   12 May 2001 04:17:04 
 пеpесечения   Stepan Polovnikov   12 May 2001 16:17:54 
Архивное /ru.algorithms/21067566769d1.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional